Java作业13: 定义一个圆类,该类中有求圆的面积的方法, 圆的半径值从键盘输入或赋值, 当圆的半径值小于0时, 抛出一个自定义的异常, 否则求圆的面积。
时间: 2023-10-31 19:19:44 浏览: 28
以下是 Java 代码实现:
```java
import java.util.Scanner;
class Circle {
private double radius;
public Circle(double radius) throws NegativeRadiusException {
if (radius < 0) {
throw new NegativeRadiusException("半径不能为负数");
}
this.radius = radius;
}
public double getArea() {
return Math.PI * radius * radius;
}
}
class NegativeRadiusException extends Exception {
public NegativeRadiusException(String message) {
super(message);
}
}
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("请输入圆的半径:");
double radius = scanner.nextDouble();
try {
Circle circle = new Circle(radius);
System.out.println("圆的面积为:" + circle.getArea());
} catch (NegativeRadiusException e) {
System.out.println("错误信息:" + e.getMessage());
}
}
}
```
程序首先定义了一个 `Circle` 类,其中包含了一个构造方法和一个求圆面积的方法。在构造方法中,如果半径值小于 0,就会抛出一个自定义的 `NegativeRadiusException` 异常。
在 `Main` 类中,程序通过 `Scanner` 类从键盘输入半径值,并将其传递给 `Circle` 类的构造方法。如果构造方法正常执行,就输出圆的面积;否则,就捕获 `NegativeRadiusException` 异常,并输出错误信息。
需要注意的是,Java 中的圆周率可以通过 `Math.PI` 常量获取。