【发布时间】:2012-12-12 17:05:54
【问题描述】:
假设我有 10 行代码。任何行都可能引发 NullPointerException。我不想关心这些异常。如果一行抛出异常,我希望执行程序跳转到下一行并继续前进。我可以在 Java 上做到这一点吗?如果是,请给我一些示例代码。
更新:(添加示例源以获得更清晰的问题)
first.setText(prize.first);
second.setText(prize.second);
third.setText(prize.third);
fourth.setText(prize.fourth);
fifth.setText(prize.fifth);
sixth.setText(prize.sixth);
seventh.setText(prize.seventh);
eighth.setText(prize.eighth);
假设我上面有 8 行代码。我想要的是:如果第 4 行(或第 5、6、...)行抛出异常,则所有其他代码行都正常工作。当然,我可以使用 try...catch 逐行捕获异常。但是这种方式使我的来源非常复杂。
【问题讨论】:
-
为什么要忽略 NPE 而不是检查空值?
-
每一行都会是
try / catch... -
不应使用异常来隐藏您不想查找/修复的错误。你应该确定为什么你会得到 NullPointerExceptions 并修复它,而不是隐藏它。
-
该示例代码看起来很适合替换为循环和数组。
-
@Tomas - 提到了!如果你不介意,如果你对我的回答有更多的意见,请评论我的回答