1.正方形(square) 具有菱形(diamond)的四条边相等的特征,同时又具有长方形(rectangle)四个角是直角的特征。请编写程序实现上述图形的继承关系,输出正方形的特征:四个角是直角、四条边相等。
时间: 2024-09-13 15:18:05 浏览: 59
在编程语言中,我们可以通过定义类和继承关系来模拟这种几何图形的特征。以下是一个简单的示例,使用Python语言来实现正方形、长方形和菱形之间的继承关系:
```python
class Rectangle:
def __init__(self):
self.width = None
self.height = None
def set_width(self, width):
self.width = width
def set_height(self, height):
self.height = height
def area(self):
return self.width * self.height
class Square(Rectangle):
def __init__(self):
super().__init__()
self.set_width(1) # 初始化时假定为单位正方形
self.set_height(1)
def is_square(self):
return self.width == self.height
def print_features(self):
print("四个角是直角")
print("四条边相等")
class Diamond(Square):
def __init__(self):
super().__init__()
# 菱形可以看作是边长固定的正方形
# 创建一个正方形实例
square = Square()
square.set_width(5) # 假定正方形的边长为5
square.print_features() # 输出正方形的特征
```
在这个例子中,`Rectangle` 是一个长方形的基类,拥有设置宽度和高度的方法,以及计算面积的方法。`Square` 继承自 `Rectangle`,并且在构造函数中将宽度和高度设置为相等,表示四条边相等。`Square` 还拥有一个方法 `print_features` 来打印正方形的特征。
需要注意的是,在上面的代码中,`Square` 是 `Rectangle` 的子类,而不是完全独立的图形。在实际应用中,根据具体需求,可能需要对这种继承关系进行调整。
阅读全文