我有一个A类,其中有一个方法openfileConnec()。它写得如下:
public void openfileConnec() throws Exception {
//code for opening a file
}
现在我来到B级,我会像下面这样称呼这个方法:
class B {
try {
openfileConnect()
}
catch(Exception e) {
}
}
我在接受采访时被问到如下问题:
任何人都可以帮我解决这个问题吗?在此先感谢。
答案 0 :(得分:1)
我在接受采访时被问到一个问题 如下:为什么方法有一个 在声明中抛出异常?
因为它想告诉方法调用者有什么问题,方法调用者应该决定如何解决这个问题(例外)。
是否在调用的方法中 实现抛出了基础 类异常?
这也是事实,但是一个方法可以决定抛出新的Exception本身。因为它希望让来电者决定不解决问题本身。
执行catch之后应该在哪里 控制去,应该发送什么 基础案例?
它的调用者是如何处理错误的。 (例如,显示错误消息并通知用户或执行其他操作)它可以调用。
答案 1 :(得分:0)
openfileConnec()方法有一个throws声明,因为打开文件会抛出IOException(如果文件不存在,或者例如不可读)。
如果在方法中未管理此异常,则该方法必须声明抛出异常。