java 异常

产生异常,首先会生成异常对象。

如果在try语句块中的任何代码抛出了一个在catch子句中说明的异常类,那么

1)程序将跳过try语句块的其它代码

2)程序将执行catch子句中的处理器代码

如果在try语句块中没有抛出任何异常,那么程序将跳过catch子句。

如果方法中的任何代码抛出了一个在catch子句中没有声明的异常类型,那么这个方法就会立刻跳出(希望调用者为这种类型的异常设计了catch子句)

1.函数内部处理异常

1.1这种是普通的处理异常请求

try {
    ...
} catch (IOException e) {
    System.out.println( e.printStackTrace())
}

1.2这种情况,一般是网络请求,根据返回的结果,处理异常,

try {
    throw new IOException (response.getEntity());
} catch (IOException e) {
    System.out.println( e.printStackTrace())
}

2.传递异常的两种写法

2.1 在函数内部将异常重新定义,并交给调用者处理

try {

} catch (IOException e) {
    throw new SampleException("Other IOException", e);
}

2.2 传递一个异常,并交给调用者处理,方法内部不处理这样的异常,但是调用者必须处理这样的异常,当然调用者也可以传递到上一级调用者。

public void test() throws IOException{}

 

原文地址:https://www.cnblogs.com/AntonioSu/p/14331786.html