A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 曹老师 黑马粉丝团   /  2017-8-21 22:12  /  705 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

今天看书,看到了关于自定义异常类的使用,觉得很有必要记录下来供大家一起探讨。以下是书中的内容:
1.创建自定义异常类
创建自定义的异常类需要继承自Exception类,并提供含有一个String类型形参的构造方法,该形参就是异常的描述信息,可以通过getMessage()方法获得。例如:
[java] view plain copy


  • <span style="font-size:18px;">public class NewException extends Exception{  
  •   
  •     public NewException(String s) {  
  •         super(s);  
  •     }  
  •       
  • }</span>  



说明
上面代码创建了一个自定义异常类NewException,也就是说NewException是自定义异常类的名称,该类继承自Exception,该类构造方法的形参s是需要传递的异常描述信息,该信息可以通过异常类的getMessage()方法获得。
2.使用自定义异常类
创建完自定义异常类后,就可以在程序中使用了。使用自定义异常类可以通过throw语句抛出异常,接下来通过实例来说明自定义异常类的使用。
自定义异常类NewException的代码如下:

[java] view plain copy


  • <span style="font-size:18px;">public class NewException extends Exception{  
  •   
  •     public NewException(Double r) {  
  •         System.out.println("发生异常,圆的半径不能小于20");  
  •         System.out.println("圆的半径为:"+r);  
  •     }  
  •       
  • }</span>  

[size=13.3333px]Test类的代码如下:


[java] view plain copy


  • <span style="font-size:18px;">public class Test {  
  •     //创建求圆的面积的方法  
  •     public static void showArea(double r)throws NewException{  
  •   
  •         if(r<20){  
  •             //抛出异常  
  •             throw new NewException(r);  
  •         }  
  •         //计算圆的面积  
  •         double area=3.14*r*r;  
  •         //输出圆的面积  
  •         System.out.println("圆的面积是:"+area);  
  •     }  
  •   
  •     public static void main(String[] args) {  
  •   
  •         try {  
  •             //调用方法,传递半径为10  
  •             showArea(10);  
  •         } catch (NewException e) {  
  •             //输出异常信息  
  •             System.out.println(e);  
  •         }  
  •   
  •     }  
  •   
  • }</span>  

[size=13.3333px]
运行结果如图:

到这里就结束了!希望大家能够触类旁通、举一反三。每天进步一点点!努力!

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马