抛出异常和异常捕捉时的匹配

抛出异常

public static int open(){
    return -1;
}
public static void readFile() throws OpenException {
    if (open() == -1){
        throw new OpenException();
    }
}
在这段代码中我们使用try-catch处理异常外,同样也可以使用throw抛出异常,抛出的异常需要有异常类继承
Exception
class OpenException extends Exception{

}

区别:

  throw关键字抛出异常。与throws有所不同的是,throw用于方法体内,并且抛出的是一个异常对象,

  而thorws关键字用在方法声明中,用来指明方法可能爆出的多个异常

异常捕捉时的匹配

catch如果子类异常会被父类异常的catch给捕捉到
如果运行时异常是不需要声明的,如果没有适当的机制来捕捉就会最终导致程序终止


**异常声明**
如果你调用一个声明会抛出异常的函数,那么你必须把函数的调用放在try块中,并设置
catch来捕捉所有可能抛出的异常或声明自己会抛出无法处理的异常

posted @ 2022-06-23 19:43  monkey大佬  阅读(93)  评论(1)    收藏  举报