Java 上机----实训操作7---circle类 自定义异常

编写程序,定义一个circle类,其中有求面积的方法,当圆的半径小于0时,抛出一个自定义的异常。 执行代码:

class lenghException extends Exception
{
          
   
    private double value;
    lenghException(String msg,double value)
    {
          
   
        super(msg);
        this.value=value;
    }
    public double getValue()
    {
          
   
        return value;
    }
}
public class circle
{
          
   
    private double r;
    static final double PI=3.14;
    public void setR(double r)throws lenghException
    {
          
   
        if (r<0)
            throw new lenghException("出现了半径小于0的情况,你的半径不能为负数",r);
        this.r=r;

    }
    public void getarea()
    {
          
   
        System.out.println(r*r*PI);
    }
    public void getlengh()
    {
          
   
        System.out.println(2*r*PI);
    }
}
class CircleExceptionDemo {
          
   
    public static void main(String[] args) throws lenghException {
          
   
        circle circle = new circle();
        try {
          
   
            circle.setR(5);
            circle.getarea();
            circle.getlengh();
        } catch (lenghException e) {
          
   
            System.out.println(e.toString());
            System.out.println("错误的数是:" + e.getValue());
        }
        circle circle2 = new circle();
        try {
          
   
            circle2.setR(-2);
            circle2.getarea();
            circle2.getlengh();
        } catch (lenghException e) {
          
   
            System.out.println(e.toString());
            System.out.println("错误的数是:" + e.getValue());
        }
    }
}

执行结果:

·先调试后运行

经验分享 程序员 微信小程序 职场和发展