Java中自定义异常
定义一个自定义异常类MyException,继承Exception异常大类,其中toString方法用来输出异常打印的信息,该方法可以自定义输出结果。
a=1时
输出:
传递的参数为:1
OK
a=11时
输出:
传递的参数为:11
MyException->MyException{detail=11}
其中Test类中的test方法也可以不抛出异常(让后续调用者捕获)而直接在test中进行捕获:
a=1时输出:
传递的参数为:1
OK
a=11时输出:
传递的参数为:11
MyException->MyException{detail=11}
OK
但是很显然第二种方式,a=11时输出多了一个“OK”,可见在test方法中捕获以后程序会继续执行后续打印操作;而方法一中执行到if判断语句后,test方法直接抛出异常,程序转到主函数中的catch语句中执行,即被主函数捕获。