Java中自定义异常详解及实例代码
Java中自定义异常详解及实例代码
下面做了归纳总结,欢迎批评指正
自定义异常
classChushulingExceptionextendsException { publicChushulingException(Stringmsg) { super(msg); } } classChushufuExceptionextendsException { publicChushufuException(Stringmsg) { super(msg); } }
自定义异常End
classNumbertest { publicintshang(intx,inty)throwsChushulingException,ChushufuException { if(y<0) { thrownewChushufuException("您输入的是"+y+",规定除数不能为负数!");//抛出异常 } if(y==0) { thrownewChushulingException("您输入的是"+y+",除数不能为0!"); } intm=x/y; returnm; } } classRt001 { publicstaticvoidmain(String[]args) { Numbertestn=newNumbertest(); //捕获异常 try { System.out.println("商="+n.shang(1,-3)); } catch(ChushulingExceptionyc) { System.out.println(yc.getMessage()); yc.printStackTrace(); } catch(ChushufuExceptionyx) { System.out.println(yx.getMessage()); yx.printStackTrace(); } catch(Exceptiony) { System.out.println(y.getMessage()); y.printStackTrace(); } finally{System.out.println("finally!");}////finally不管发没发生异常都会被执行 } } /*
[总结]
1.自定义异常:
class异常类名extendsException { public异常类名(Stringmsg) { super(msg); } }
2.标识可能抛出的异常:
throws异常类名1,异常类名2
3.捕获异常:
try{} catch(异常类名y){} catch(异常类名y){}
4.方法解释
getMessage()//输出异常的信息 printStackTrace()//输出导致异常更为详细的信息
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!