异常03:自定义异常及经验小结

  • toString 异常的打印信息
代码示例:
application.java:
package com.exception.Test2;

public class Application {

    //这个是方法
    //可能会存在异常的方法
    static void application(int a) throws MyException {

        System.out.println("传递的参数" + a);

        if (a > 10) {
            throw new MyException(a);
        }
        System.out.println("ok");
    }

    //主函数调用
    public static void main(String[] args) {
        try {
            application(11);
        } catch (MyException e) {
            //增加一些处理异常的代码
            System.out.println("MyException=>" + e);
        }
    }
}


输出:

传递的参数11
MyException=>MyException{11}

进程已结束,退出代码 0
MyException.java:
package com.exception.Test2;

//自定义的异常类
public class MyException extends Exception {

    private int detail;

    public MyException(int a) {
        this.detail = a;

    }

    //tostring :  异常的打印信息  ,Alt + Insert
    @Override
    public String toString() {
        return "MyException{"  + detail + '}';
    }
}

实际应用中的经验总结:
  • 处理运行异常时,采用逻辑去合理规避同时辅助try-catch处理
  • 在多重catch块后面,可以加一个catch(Exception)来处理可能会被遗漏的异常
  • 对于不确定的代码,也可以加上try-catch,处理潜在的异常
  • 尽量去处理异常,切记只是简单地调用printStackTrace()去打印输出
  • 具体如何处理异常,要根据不同的业务需求和异常类型去决定
  • 尽量添加finally语句块去释放占用的资源
posted @ 2020-09-07 14:13  nkndlawn  阅读(122)  评论(0)    收藏  举报