异常处理

异常分为3类:

  1.检查性异常:由用户错误引起,程序员无法预见,如打开一个不存在的文件

  2.运行时异常:编译的时候看不到,运行时才出现,程序员能处理

       3.错误由JVM产生,是灾难性的错误

Java把异常当做对象处理,定义java.lang.Throwable为所有异常的超类,分为错误和异常

 

Exception中的重要子类:RuntimeException(运行时异常),一般由程序逻辑错误引起

异常处理关键词:try,catch,finally,throw,throws

举例:

 

public class Test {
    public static void main(String[] args){
        int a = 1;
        int b = 0;
        System.out.println(a/b);
    }
}

 

除数是零,产生ArithmeticException,程序不能执行,通过如下代码处理:

public class Test {
    public static void main(String[] args){
        int a = 1;
        int b = 0;
        try {
            System.out.println(a/b);
        } catch (ArithmeticException e) {
            System.out.println("b不能为0");
        } finally {
            System.out.println("结束");
        }
    }
}

程序可以执行,finally可以不要

也可以通过抛出异常检查代码:注意throw和throws的区别,throw写在方法内部,由方法内部处理,throws写在方法声明后,表示方法可能抛出的异常,由方法的调用者处理

public class Test {
    public static void main(String[] args){
        int a = 1;
        int b = 0;
        if(b==0){
            throw new ArithmeticException();
        }
}
posted @ 2019-12-18 21:17  嫩西瓜  阅读(124)  评论(0)    收藏  举报