java中的所有的异常类都是Throwable的子类,
而Throwable类下分为:Error Exception
Error子类指代错误,无法避免 无法处理 直接无视 爱咋咋的~
Exception子类指代异常;
而Exception异常类有分为:RuntimeException 和 非RuntimeException;
RuntimeException指代运行时异常 属于开发人员在编写代码是不谨慎,不严谨或使用错误的方式造成的
RuntimeException处理方式: 优先避免 可处理 可不处理;
非RuntimeException同指运行时异常,属于无法避免的异常但不是错误,
非RuntimeException异常处理方式: 无法避免 必须处理
区分RuntimeException异常和非RuntimeException异常:
主要是查看异常子类 是否继承了RuntinmeException类
如果继承了RuntimeException类 此异常子类就是运行时异常 未检查异常;
如果没有继承RuntinmeException类,此异常子类就是已检查异常;
异常的处理方式:
1.消极处理 :直接抛出异常,不管 一种以看似处理的方式 处理异常;
2.积极处理: 使用try{}catch(){}方式处理异常 ;
自定义异常:
自定义非RuntinmeException异常类:
语法: class 类 extends Exception {
提供有参/无参构造方法
public 类 (){}
public 类 (String message ){
super(message);
}
}
自定义RuntimeException异常类:
class 类 extends RuntimeException {
提供有参/无参构造方法
public 类 ( ){}
public 类 (String message){
super(message);
}
}