代码健壮性与错误处理策略
1. 错误处理的背景与基本概念
在软件开发中,错误处理是一个至关重要的环节。以电话号码解析为例,在调用 PhoneNumber.parse() 函数时,调用者往往无需了解判断电话号码是否有效的复杂规则,这正是 PhoneNumber 类存在的意义,它将这些实现细节进行了封装。以下是 PhoneNumber 类的部分代码示例:
class PhoneNumber {
...
static PhoneNumber parse(String number) {
if (!isValidPhoneNumber(number)) {
... some code to handle the error ...
}
...
}
...
}
由于调用者可能并非电话号码方面的专家,他们可能甚至没有意识到无效电话号码的概念,或者认为验证应该在拨号时进行。因此, PhoneNumber.parse() 函数的编写者需要确保调用者知晓可能会出现错误,否则当错误发生时,如果没有相应的处理代码,可能会导致用户可见的错误或关键业务逻辑的失败。
当错误发生时,通常有两种选择:
- 失败处理 :可以让更高层的代码处理错误,或者使整个程序崩溃。
- 继续执行 :尝试处理错误并继续执行程序。
继续执行有时可
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



