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,然后实现多个构造即可