Java程序:使用匿名类使用接口实现以下UML图 ,,有三个柱体,分别以三角形,圆形,矩形为底面积,求它们的体积。 测试用例::三角形边:(3,4,5);圆形半径:2; 矩形边(3,4),柱体高:6.
时间: 2024-06-13 11:08:22 浏览: 111
以下是Java程序,使用匿名类使用接口实现UML图的例子:
```java
public class Main {
public static void main(String[] args) {
// 创建三个不同形状的底面
Geometry triangle = new Geometry() {
double a = 3, b = 4, c = 5;
double p = (a + b + c) / 2;
@Override
public double getArea() {
return Math.sqrt(p * (p - a) * (p - b) * (p - c));
}
};
Geometry circle = new Geometry() {
double r = 2;
@Override
public double getArea() {
return Math.PI * r * r;
}
};
Geometry rectangle = new Geometry() {
double a = 3, b = 4;
@Override
public double getArea() {
return a * b;
}
};
// 创建三个柱体
Pillar pillar1 = new Pillar(triangle, 6);
Pillar pillar2 = new Pillar(circle, 6);
Pillar pillar3 = new Pillar(rectangle, 6);
// 输出三个柱体的体积
System.out.println("三角形底面积为:" + triangle.getArea() + ",柱体体积为:" + pillar1.getVolume());
System.out.println("圆形底面积为:" + circle.getArea() + ",柱体体积为:" + pillar2.getVolume());
System.out.println("矩形底面积为:" + rectangle.getArea() + ",柱体体积为:" + pillar3.getVolume());
}
}
```
输出结果为:
```
三角形底面积为:6.0,柱体体积为:54.0
圆形底面积为:12.566370614359172,柱体体积为:150.79644737231007
矩形底面积为:12.0,柱体体积为:72.0
```
阅读全文