自定义异常(java作业)

自定义异常类CircleException:

public class CircleException extends Exception{
    double radius;

    public CircleException(double radius){
        this.radius = radius;
    }

    @Override
    public String toString() {
        return "radius:r="+radius+",needs to be a positive number.";
    }
}
Circle类:
public class Circle {
    private double radius;

    public Circle(){
    }

    public Circle(double radius){
        this.radius = radius;
    }

    public void setRadius(double radius) throws CircleException{
        if (radius <0) {
            throw new CircleException(radius);
        }
        this.radius = radius;
    }

    public void show(){
        System.out.println("area="+3.14*radius*radius);
    }
}

测试类CircleExceptionTest:

public class CircleExceptionTest {
    public static void main(String[] args) {
        Circle c1 = new Circle();
        try {
            c1.setRadius(-2);
        } catch (CircleException e) {
            System.out.println("Custom exception:"+e.toString());
        }
        c1.show();
    }
}

比较简单的一种自定义异常类。

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