(接口的定义与类实现接口)编写一个Java程序,在程序中定义一个接口 Shape,包含两个抽象方法,一个是计算面积 area(),一个计算体积volume(),再定义一个类 Cylinder,实现这个Shape接口,设计一个程序,输出面积和体积;
时间: 2023-12-24 10:05:53 浏览: 100
实现如下:
```java
interface Shape {
double area(); // 抽象方法:计算面积
double volume(); // 抽象方法:计算体积
}
class Cylinder implements Shape {
private double radius; // 半径
private double height; // 高度
public Cylinder(double radius, double height) {
this.radius = radius;
this.height = height;
}
@Override
public double area() { // 实现计算面积方法
return Math.PI * radius * radius;
}
@Override
public double volume() { // 实现计算体积方法
return Math.PI * radius * radius * height;
}
}
public class Main {
public static void main(String[] args) {
Cylinder cylinder = new Cylinder(2, 5); // 创建一个圆柱体
double area = cylinder.area(); // 计算面积
double volume = cylinder.volume(); // 计算体积
System.out.println("面积为:" + area);
System.out.println("体积为:" + volume);
}
}
```
我们定义了一个接口 `Shape`,它包含两个抽象方法 `area()` 和 `volume()`,分别用于计算形状的面积和体积。然后我们定义了一个类 `Cylinder`,它实现了 `Shape` 接口,并且实现了 `area()` 和 `volume()` 方法。
在 `Cylinder` 类中,我们定义了两个私有变量 `radius` 和 `height`,它们分别表示圆柱的半径和高度,然后我们在构造函数中初始化它们。我们实现了 `area()` 方法,用于计算圆柱的表面积,以及 `volume()` 方法,用于计算圆柱的体积。
最后,在 `Main` 类中,我们创建了一个圆柱体对象 `cylinder`,并且调用它的 `area()` 和 `volume()` 方法,分别计算出圆柱体的面积和体积,并输出它们的值。
阅读全文