设计一个抽象类shape和它的两个子类square和circle,要求如下:1.shape抽象类中有成员变量int width和int r以及一个抽象方法getArea(),该方法返回一个double类型结果的面积2.square正方形和circle圆中实现了shape抽象类中的个体Area()抽象方法,分别求正方形和圆形的面积并返回3.在测试类中创建square和circle对象,计算边长为2的正方形面积和半径为3的圆形面积
时间: 2024-03-05 17:52:31 浏览: 71
好的,根据您的要求,我来给您编写代码:
```java
//定义shape抽象类
abstract class shape {
int width; //宽度
int r; //半径
//抽象方法:获取面积
public abstract double getArea();
}
//定义square正方形类,继承shape抽象类
class square extends shape {
//实现shape抽象类中的getArea方法,计算正方形的面积
public double getArea() {
return width * width;
}
}
//定义circle圆形类,继承shape抽象类
class circle extends shape {
//实现shape抽象类中的getArea方法,计算圆形的面积
public double getArea() {
return Math.PI * r * r;
}
}
//测试类
public class Test {
public static void main(String[] args) {
square s = new square();
s.width = 2;
double squareArea = s.getArea();
System.out.println("正方形面积:" + squareArea);
circle c = new circle();
c.r = 3;
double circleArea = c.getArea();
System.out.println("圆形面积:" + circleArea);
}
}
```
运行结果如下:
```
正方形面积:4.0
圆形面积:28.274333882308138
```
希望能够帮助到您,如果还有其他问题,请继续提出。
阅读全文