Java web

Java 异常

2018-12-09  本文已影响0人  dawsonenjoy

捕获异常

try{
...
}catch(异常类型 自定义名字(例如:e)){
...
}finally{
... 
}

注:
对于几个有继承关系的异常要捕获,则子类异常放前面,父类异常放后面,以免父类异常把子类的覆盖后,子类异常直接被当父类异常捕获

抛出异常

通过throws为函数声明可能抛出异常,多个异常抛出用逗号隔开

自定义抛出

通过throw为单个语句抛出可能的异常,举例:

if(){
    throw new Exception("wrong");   //单个语句抛出异常
}

输出堆栈错误

e.printStackTrace();

自定义异常

通过新建一个继承于Exception的异常类,然后在方法中用throw语句抛出,举例:

public class test {
    public static void main(String[] args) throws MyException {
        People p = new People();
        p.setAge(-10);
    }
}
class People {
    private int age;
    public void setAge(int age) throws MyException {  //继承于Exception的异常需要抛出或捕获
        if (age < 0) {
            throw new MyException("年龄过小!");  //抛出异常
        }
        this.age = age;
    }
}
class MyException extends Exception {  //自定义异常
    public MyException() {
    }
    public MyException(String esg) {
        super(esg);
    }
}
上一篇 下一篇

猜你喜欢

热点阅读