6.1 展示Java异常如何工作

下面两个例子, 一个显示,调用者方法需要处理被调用方法抛出的异常。 另一个显示超类可以用来捕获或处理子类异常。

调用方法必须处理被调用方法抛出的异常

这是一个处理异常的程序,如果一个方法抛出了异常,不光它要什么声明或抛出异常,调用它的方法也需要。

public class exceptionTest {
    private static Exception exception;
 
    public static void main(String[] args) throws Exception {
            callDoOne(); 
    }
 
    public static void doOne() throws Exception {
        throw exception;
    }
 
    public static void callDoOne() throws Exception {
        doOne();
    }
}

超类可以捕获或处理子类异常

下面的代码是ok的,因为超类可以捕获和处理子类异常

class myException extends Exception{
 
}
 
public class exceptionTest {
    private static Exception exception;
    private static myException myexception;
 
    public static void main(String[] args) throws Exception {
            callDoOne(); 
    }
 
    public static void doOne() throws myException {
        throw myexception;
    }
 
    public static void callDoOne() throws Exception {
        doOne();
        throw exception;
    }
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

友情链接更多精彩内容