异常处理


异常处理
 

checked exception:

1. 除了RuntimeException的所有Exception的子类

2. 必须被捕获或者重新抛出

 

unchecked exception:

1. 所有继承RuntimeException的异常类

2. 如果没必要,unchecked exception不需要被捕获

 

getMessage(): 通过new Exception("message")或RuntimeException("message")

 

printStackTrace(): 打印执行栈的内容

 

异常链:不丢失原始的异常信息

public Throwable() 

public Throwable(String message) 

public Throwable(String message, Throwable cause) // Caused by: 

public Throwable(Throwable cause)

 

 

重写方法抛出异常

1. 父类(接口)没有抛出异常

    不抛出异常

    抛出RuntimeException

    

2. 父类(接口)抛出checked exception

    抛出与父类同样的异常

    抛出子异常

    不抛出异常

    抛出RuntimeException

    

3. 父类(接口)抛出unchecked exception

    不抛出异常

    抛出RuntimeException

 

finally块一定会执行

你可能感兴趣的:(异常处理)