java 异常处理

一、异常分类:

  1、运行时异常:RuntimeException的子类就是运行时异常,在编译时期和选择处理或者不处理。如java.lang.NullPointException等。

  2、编译时异常:是Exception子类,且非RuntimeException的子类,在编译时必须处理。处理方式有:Throws抛出或者try catc捕获。

二、throws和throw的区别:

  1、throws:处理异常的一种方式,把异常抛出,由调用者来处理

  2、 throw:制造异常的方式,并且结束方法(显式抛出异常)

public class ExceptionDemo {
    public static void main(String[] args) {
        try {
            checkScore(110);
        } catch (Exception e) {
            //System.out.println(e.getMessage());
            e.printStackTrace();
        }
    }

    public static void checkScore(int score) throws Exception {
        if(score < 0 || score > 100) {
              throw new RuntimeException("考试成绩不符合要求");
            //throw new MyException("考试成绩不符合要求");
        } 
        System.out.println("考试成绩符合要求");
    }
    
}

 三、如何自定义一个异常类呢?

  实现:非常简单,写一个类去继承Exception或者RuntimeException,然后实现多个构造即可

原文地址:https://www.cnblogs.com/damoblog/p/10504674.html