Dmy*_*sun 4 oop validation design-patterns
我和朋友有争执.
他说我这个代码:
method SetBalance(balance) {
if (balance > 0) {
this.balance = balance;
return true;
}
return false;
}
Run Code Online (Sandbox Code Playgroud)
比这更好:
method SetBalance(balance) {
if (balance < 0) {
throw new InvalidArgumentException("Balance couldn't be negative")
}
this.balance = balance;
}
Run Code Online (Sandbox Code Playgroud)
我的问题是:"哪种方法更适合验证?" 为什么?
谢谢.
啊.返回状态与异常.
我更喜欢抛出异常,因为你不能真正忽略异常.程序崩溃,或者您必须明确地捕获并处理它.
您可以忽略退货状态.
此外,这不是现代编程中存在例外的原因吗?处理好......异常(余额<= 0,不应该发生的事情).
| 归档时间: |
|
| 查看次数: |
226 次 |
| 最近记录: |