我知道我可以在PHP中从构造函数中抛出异常,但我应该这样做吗?例如,如果参数的值不符合我的预期。
还是应该推迟引发异常,直到方法被调用。两种情况下的优缺点是什么?
问题是您是否希望您的用户看到难看的异常错误消息?
@LawrenceCherone不,这不是问题。一点也不。问题是当ctor无法从传递给它的参数将对象设置为有效状态时立即引发异常,还是将其推迟到调用该实例上可能具有无效状态的方法之前。不过更适合程序员。
@LawrenceCherone你是对的。任何软件都不应该故意失败。它应该继续前进,看看会发生什么。/ s
—
user253751 '16
@immibis好讽刺是好的。
—
kodeart
这是一个很棒的问题!!!直到今天,我什至从未考虑过这个想法。
—
Rhys Johns