• Exception一自定义异常


    异常体系的根类是:Throwable

    • Throwable:
      • Error:   重大的问题,我们处理不了。也不需要编写代码处理。比如说内存溢出。
      • Exception:   一般性的错误,是需要我们对编写的代码进行处理。
        • 运行期异常:   在运行时出问题,需要修正代码
        • 编译期异常:就是一般的异常(编译期异常)
    • Throwable类的三个重要方法
      • getMessage(): 获取异常信息,返回字符串。
      • toString(): 获取异常类名和异常信息,返回字符串。
      • printStackTrace(): 获取异常类名和异常信息,以及异常出现在程序中的位置。返回值void。
    • 异常捕捉与处理
      • try...catch
      • try...catch...catch...
      • try...catch...catch...finally

    多个异常同时被捕获的时候,记住一个原则:先逮小的,再逮大的。

    Throw与throws抛出异常

    • throw : 将产生的异常抛出(强调的是动作),抛出的既可以是异常的引用,也可以是异常对象。(位置: 方法体内
      • 后面是RuntimeException及其子类,调用时可以不处理
      • 后面是编译异常,调用时需要处理(Throws or try...catch
    • throws : 如果一个方法可能会出现异常,但没有能力处理这种异常,可以在方法声明处用throws子句来声明抛出异常。用它修饰的方法向调用者表明该方法可能会抛出异常(可以是一种类型,也可以是多种类型,用逗号隔开)(位置: 写在方法名,或方法名列表之后 ,在方法体之前。

    注意 : 调用可能会抛出异常的方法,必须添加try-catch代码块尝试去捕获异常 或者 添加throws声明 来将异常 抛出给更上一层的调用者进行处理
    子类重写父类方法,父类未抛出异常,子类也不能抛出异常(可以try...catch)

    自定义异常

    public class CustomException extends Exception {
    
        protected String code;
    
        protected String message;
    
        //无参构造方法
        public CustomException(){
            super();
        }
    
        //有参的构造方法
        public CustomException(String message,String code){
            super(message);
            this.message = message;
            this.code= code;
        }
    
        // 用指定的详细信息和原因构造一个新的异常
        public CustomException(String message, Throwable cause){
            super(message,cause);
        }
    
        //用指定原因构造一个新的异常
         public CustomException(Throwable cause) {
             super(cause);
         }
    }
    
  • 相关阅读:
    Cs231n课堂内容记录-Lecture1 导论
    Linux实时查询GPU使用命令
    导出excel的简单方法
    正则表达式的一些应用
    4、Python语法之变量
    javaScript中对typeof 和 instanceof 的使用及理解
    JavaScrpt 变量作用域
    真香的flex弹性布局
    css调试与样式优先级
    css3新样式
  • 原文地址:https://www.cnblogs.com/loveer/p/11314089.html
Copyright © 2020-2023  润新知