.定义一个抽象基类Shape, 该类包含一个抽象方法getArea(), 从Shape类派生出Circle类和Rectangle类,请利用getArea()方法计算两个类对象的面积。
时间: 2024-02-13 11:04:21 浏览: 152
Java:使用抽象类定义一个“形状类”,能够计算周长和面积。
好的,您可以这样实现:
```java
// 定义一个抽象基类Shape
abstract class Shape {
// 声明一个抽象方法getArea()
public abstract double getArea();
}
// Circle类继承自Shape类
class Circle extends Shape {
private double radius; // 圆的半径
public Circle(double radius) {
this.radius = radius;
}
// 实现抽象方法getArea()
public double getArea() {
return Math.PI * radius * radius;
}
}
// Rectangle类继承自Shape类
class Rectangle extends Shape {
private double width; // 矩形的宽
private double height; // 矩形的高
public Rectangle(double width, double height) {
this.width = width;
this.height = height;
}
// 实现抽象方法getArea()
public double getArea() {
return width * height;
}
}
public class Main {
public static void main(String[] args) {
// 创建一个Circle对象并计算其面积
Circle circle = new Circle(5);
System.out.println("Circle的面积为:" + circle.getArea());
// 创建一个Rectangle对象并计算其面积
Rectangle rectangle = new Rectangle(3, 4);
System.out.println("Rectangle的面积为:" + rectangle.getArea());
}
}
```
输出结果为:
```
Circle的面积为:78.53981633974483
Rectangle的面积为:12.0
```
在上面的例子中,我们定义了一个抽象基类 `Shape`,其中声明了一个抽象方法 `getArea()`,该方法用于计算图形的面积。然后,我们定义了两个子类 `Circle` 和 `Rectangle`,它们分别继承自 `Shape` 类,并实现了 `getArea()` 方法,用于计算圆和矩形的面积。最后,在 `main()` 方法中,我们创建了一个 `Circle` 对象和一个 `Rectangle` 对象,并分别调用它们的 `getArea()` 方法来计算它们的面积。
阅读全文