Java是一種流行的編程語言,它可以用來計算各種數學問題,比如計算一個圖形的面積和周長。當進行這類計算時,我們可能會遭遇一些異常,比如長和寬不能為負數,或者圓的半徑必須大于零。在這種情況下,一個好的程序應該拋出一個自定義的異常,以防止程序崩潰或輸出無效的結果。
public class InvalidShapeException extends Exception { public InvalidShapeException(String message) { super(message); } } public class Shape { protected double width; protected double height; public double getArea() throws InvalidShapeException { if (width< 0 || height< 0) { throw new InvalidShapeException("Width and height must be positive numbers"); } return width * height; } public double getPerimeter() throws InvalidShapeException { if (width< 0 || height< 0) { throw new InvalidShapeException("Width and height must be positive numbers"); } return 2 * (width + height); } } public class Rectangle extends Shape { public Rectangle(double width, double height) { this.width = width; this.height = height; } } public class Circle extends Shape { private double radius; public Circle(double radius) { this.radius = radius; } public double getArea() throws InvalidShapeException { if (radius< 0) { throw new InvalidShapeException("Radius must be a positive number"); } return Math.PI * radius * radius; } public double getPerimeter() throws InvalidShapeException { if (radius< 0) { throw new InvalidShapeException("Radius must be a positive number"); } return 2 * Math.PI * radius; } }
上述代碼段包含幾個類,分別用于計算矩形和圓的面積和周長,以及處理可能出現的異常。這些類都繼承了一個基類Shape,它包括Width和Height這兩個屬性,以及getArea和getPerimeter這兩個方法。如果寬度或高度的值小于0,程序會拋出一個InvalidShapeException異常。如果圓的半徑小于0,同樣會拋出一個InvalidShapeException異常。
上一篇python的貼圖模塊
下一篇css圖片換背景顏色