自定义异常和小结
自定义异常:
package com.cheng.Exception;
//自定义异常类要继承Exception
public class MyException extends Exception{
//传递参数
private int detail;
public MyException(int a){
this.detail = a;//传递参数给detail
}
自定义异常的抛出和捕获:
package com.cheng.Exception;
public class Test {
public static void main(String[] args) {//用test检测抛出然后捕获异常输出信息
try {
test(11);//try后检测代码块是否有异常
} catch (MyException m) {//有MyException异常捕获
System.out.println("MyException=>" + m);//输出信息
}
}
public static void test(int a) throws MyException{//方法上抛出异常
System.out.println("传递的参数为:" + a);//输出信息
if (a > 10){//如果a>10 抛出Exception 传参a的值
throw new MyException(a);//方法中抛出异常
}
}
}
小结:
-
在处理运行时异常时,采用逻辑合理规避同时辅助try-catch处理;
-
在多重catch块 后面,可以加上一个catch(Exception)来处理可能会被遗漏的异常;
-
对于不确定的代码,也可以加上try-catch,处理潜在的异常;
-
尽量去处理异常,切忌只是简单的调用printStackTrace()去打印输出;
-
具体如何处理异常,要根据不同的业务需求和异常类型去决定;
-
尽量添加finally语句块去释放占用的资源。

浙公网安备 33010602011771号