当我阅读Core.Java.Volume.i时,我可以';我不明白这个句子的意思
当我阅读Core.Java.Volume.I时,我无法理解以下内容的含义: “小心确保关键部分中的代码未被删除 通过引发异常绕过。如果在 节的末尾,finally子句将放弃锁, 但物体可能处于损坏状态。”当我阅读Core.Java.Volume.i时,我可以';我不明白这个句子的意思,java,Java,当我阅读Core.Java.Volume.I时,我无法理解以下内容的含义: “小心确保关键部分中的代码未被删除 通过引发异常绕过。如果在 节的末尾,finally子句将放弃锁, 但物体可能处于损坏状态。” 我如何确保这一点?在抛出异常时,是否必须绕过关键部分中的代码 在finally部分添加您自己的代码,以确保对象处于安全状态。具体怎么做?取决于对象和状态。在finally部分添加您自己的代码,以确保对象处于安全状态。具体怎么做?取决于对象和状态。请考虑以下伪代码: Patient patien
我如何确保这一点?在抛出异常时,是否必须绕过关键部分中的代码 在
finally
部分添加您自己的代码,以确保对象处于安全状态。具体怎么做?取决于对象和状态。在finally
部分添加您自己的代码,以确保对象处于安全状态。具体怎么做?取决于对象和状态。请考虑以下伪代码:
Patient patient = service.getPatient(name);
hospitalEquipment.lock();
try {
patient.pauseLifeSupport();
// some code causing an exception
patient.resumeLifeSupport();
} finally {
hospitalEquipment.unlock();
}
在该伪代码中,异常导致绕过“关键部分”,即恢复生命支持。您可以通过将调用移动到
finally
块内的resumelifestupport()
或具有一些紧急行为来解决此问题。考虑以下伪代码:
Patient patient = service.getPatient(name);
hospitalEquipment.lock();
try {
patient.pauseLifeSupport();
// some code causing an exception
patient.resumeLifeSupport();
} finally {
hospitalEquipment.unlock();
}
在该伪代码中,异常导致绕过“关键部分”,即恢复生命支持。您可以通过将调用移动到
finally
块内的resumeLifeSupport()
或具有一些紧急行为来解决此问题。可能有助于查看quote正在讨论的代码。。。。你不觉得吗?看看引用的代码可能会有帮助。。。。你不觉得吗?