有时,当我用 Java 编写代码时,我会忘记将一些代码放入 try/catch block 中。 Eclipse 和 IntelliJ Idea 都警告我将它放在 try catch block 中或使函数抛出异常。
我的问题是,IDE 如何识别我的代码何时需要在 try/catch 中?另外,IDE 如何知道应该抛出什么类型的异常? 例如:
// Bad
private static void makeConnection(){
Connection con = DriverManager.getConnection("someConnection", "someLogin", "somePassword");
}
// Good
private static void makeConnection() throws SQLException{
Connection con = DriverManager.getConnection("someConnection", "someLogin", "somePassword");
}
// Also Good
private static void makeConnection(){
try {
Connection con = DriverManager.getConnection("someConnection", "someLogin", "somePassword");
}
catch(Exception ex){
System.out.println("Error: " + ex.toString());
}
}
最佳答案
注意这个方法定义中的检查异常:
private static void makeConnection() throws SQLException
如果您尝试调用 makeConnection()
而不使用 try/catch
或向消费方法添加 throws
声明,您会得到同样的警告。
DriverManager.getConnection()
方法具有相同的 throws
声明。 IDE 只是响应已检查的异常声明。
关于java - 当对象需要在 try/catch block 中时,IDE 的 "know"如何处理?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28732878/