运用接口1.正方形(square) 具有菱形(diamond)的四条边相等的特征,同时又具有长方形(rectangle)四个角是直角的特征。请编写程序实现上述图形的继承关系,输出正方形的特征:四个角是直角、四条边相等。
时间: 2024-09-13 08:18:07 浏览: 13
在面向对象编程中,我们可以通过定义接口和继承关系来表示具有共同特性的类。在这个例子中,我们需要定义一个长方形接口和一个菱形接口,然后定义一个正方形类来继承这两个接口,并实现它们的特性。
以下是一个简单的Java程序,演示了如何使用接口来实现正方形、长方形和菱形的继承关系,并输出正方形的特征。
```java
// 定义一个长方形接口,包含计算面积的方法
interface Rectangle {
// 长方形面积计算方法
double getArea();
}
// 定义一个菱形接口,包含计算周长的方法
interface Diamond {
// 菱形周长计算方法
double getPerimeter();
}
// 实现长方形接口和菱形接口
class Square implements Rectangle, Diamond {
// 假设正方形的边长是已知的
private double side;
public Square(double side) {
this.side = side;
}
// 实现长方形接口的计算面积方法
public double getArea() {
return side * side;
}
// 实现菱形接口的计算周长方法
public double getPerimeter() {
return 4 * side;
}
}
public class Main {
public static void main(String[] args) {
// 创建一个正方形对象
Square square = new Square(5.0);
// 输出正方形的特征
System.out.println("正方形的面积是:" + square.getArea());
System.out.println("正方形的周长是:" + square.getPerimeter());
// 输出正方形的特征:四个角是直角、四条边相等
System.out.println("正方形的四个角是直角");
System.out.println("正方形的四条边相等");
}
}
```
在这个程序中,我们定义了两个接口`Rectangle`和`Diamond`,分别表示长方形和菱形的特性。`Square`类同时实现了这两个接口,因此它必须实现接口中定义的方法。`Square`类的构造函数接收一个边长参数,然后通过该边长来计算面积和周长。在`Main`类的`main`方法中,我们创建了一个`Square`对象,并调用相应的方法来输出正方形的面积、周长以及其特征。