自定义异常

自定义异常

package com.andy.base.exception.demo01.demo02;

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

    //传递数字>10;
    private int detail;

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

    //toString 打印

    @Override
    public String toString() {
        return "MyException{"  + detail + '}';
    }
}

package com.andy.base.exception.demo01.demo02;

public class Test {

    //可能会存在的异常的方法

    static  void test(int a) throws MyException {

        System.out.println("传递的参数为:"+ a);
        if(a>10){
            throw  new MyException(a);  //alt+enter
        }
        System.out.println("OK");
    }


    public static void main(String[] args) {
        try {
            test(11);
        } catch (MyException e) {
            //e.printStackTrace();
            //这里可以写一些处理异常的代码~~
            System.out.println("MyException=>"+e);
        }
    }
}

Note

实际应用中的经验总结:
    1.处理运行的异常时,采用逻辑去合理规避同时辅助try-catch处理
    2.在多重catch块后面,可以加一个catch(Exception)来处理可能会被遗漏的异常
    3.对于不确定的代码,也可以加上try-catch,处理潜在的异常
    4.尽量去处理异常,切忌只是简单地调用printStackTrac()去打印输出
    5.具体如何处理异常,要根据不同的业务需求和异常类型去决定
    6.尽量添加finally语句块去释放占用的资源

热门相关:地球第一剑   第一神算:纨绔大小姐   豪门闪婚:帝少的神秘冷妻   寂静王冠   天启预报