在Java文档中,我正在读这个:finally块总是在try块退出时执行.这确保即使发生意外异常也会执行finally块.但最终不仅仅是异常处理有用 - 它允许程序员避免因返回,继续或中断而意外绕过清理代码.
你何时会在休息时退出试用区?我能想到的唯一场景是你在try块中运行一个循环而你是使用break/continue退出但是这应该只是退出循环而不是try块本身吗?
你何时会在休息时退出试用区?
当你有一个try 内部循环; 例如
for (Cat cat : cattery) {
try {
cat.removeFromCage();
cat.healthCheck();
if (cat.isPedigree()) {
continue;
}
cat.spey();
} finally {
cat.putBackInCage();
}
}
Run Code Online (Sandbox Code Playgroud)
好的...所以有更优雅的方式来编写"代码"......但这只是一个例子.
我能想到的唯一场景是你在try块中运行一个循环而你是使用break/continue退出但是这应该只是退出循环而不是try块本身吗?
那是对的.
FWIW,任何涉及突破try块或从catch或者最后或任何其他"边缘情况"事物返回的代码都应该简化.JLS明确指出了在这些场景中发生的事情......但这并不意味着你应该在真实的程序中使用它们.
| 归档时间: |
|
| 查看次数: |
14691 次 |
| 最近记录: |