写一个java应用程序,在程序中定义一个抽象类Shape,在定义两个Shape类的子类Rectangle、Circle类,在子类中实现父类的抽象方法,抽象方法根据自己的理解定义
时间: 2023-12-27 12:05:20 浏览: 103
下面是一个简单的Java程序,实现了抽象类Shape和它的两个子类Rectangle和Circle:
```java
abstract class Shape {
public abstract double area();
}
class Rectangle extends Shape {
private double width;
private double height;
public Rectangle(double width, double height) {
this.width = width;
this.height = height;
}
public double area() {
return width * height;
}
}
class Circle extends Shape {
private double radius;
public Circle(double radius) {
this.radius = radius;
}
public double area() {
return Math.PI * radius * radius;
}
}
public class Main {
public static void main(String[] args) {
Shape shape1 = new Rectangle(2.0, 3.0);
Shape shape2 = new Circle(1.0);
System.out.println("Rectangle area = " + shape1.area());
System.out.println("Circle area = " + shape2.area());
}
}
```
在这个程序中,Shape是一个抽象类,它有一个抽象方法area()。Rectangle和Circle分别是Shape的两个子类,它们都实现了父类的抽象方法。
在主函数中,我们创建了一个Rectangle对象和一个Circle对象,并且调用了它们的area()方法来计算它们的面积。输出结果如下:
```
Rectangle area = 6.0
Circle area = 3.141592653589793
```
这个程序可以帮助我们理解抽象类的概念和如何定义和使用它的子类。
阅读全文