java链异常

标签 java

我对链异常有疑问

try{ } catch(Exception e) { throw new SomeException(); } 

如果我喜欢这样 我的 Eclipse 会在 throw new SomeException(); 行提示错误 声明“未处理的异常” 我必须放一些类似的东西

try{ } catch(Exception e) {
                            try{ throw new SomeException(); } catch(Exception e){} 
                           }

为什么一定要这样做 因为我读过的教程.example http://java.sys-con.com/node/36579 ,不必这样做

最佳答案

如果异常是 checked exception,您需要声明该方法抛出另一个异常。 。

(“非受检异常类是 RuntimeException 类及其子类,以及 Error 类及其子类。所有其他异常类都是受检异常类。” -- Java Language Specification, Second Edition, Section 11.2 )

例如,而不是:

void someMethod {
    try {
        // Do something that raises an Exception.
    } catch (Exception e) {
        throw new SomeException();    // Compile error.
    }
}

需要在方法声明中添加抛出:

void someMethod throws SomeException {
    try {
        // Do something that raises an Exception.
    } catch (Exception e) {
        throw new SomeException();    // No problem.
    }
}

关于java链异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/942849/

相关文章:

java - 是否可以在 spring boot 中禁用另一个自动配置类的自动配置类?

javafx - 工具提示与标签具有相同的样式

java - 通过 Motorola Reader FX7500 从多个天线读取 RFID 标签 - Java

java - EBNF/半熟 : how to translate regexp into PEG?

java - 为什么方法对象的多个实例用于继承的方法

java - 使用 Base64 将 BigInteger 转换为 String 并反转结果

java - Gradle 无法使用 JavaFX 插件从 src/test 访问模块 src/main 中定义的类

java - 将对象放入 Azure 存储时出现身份验证错误

java - 为什么本地simpleDateFormat会导致bug

Java:在此设计中使用泛型的替代方案是什么?