Java 异常

作者: dawsonenjoy | 来源:发表于2018-12-09 00:26 被阅读0次

    捕获异常

    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);
        }
    }
    

    相关文章

      网友评论

        本文标题:Java 异常

        本文链接:https://www.haomeiwen.com/subject/esomcqtx.html