设计一个基类Shape,包括: 名为sName的属性(图形名称); 构造函数应对sName属性进行初始化。 设计Shape的继承类Rectangle, 包括: 长,宽两个属性; 构造函数调用Shape的构造函数,并初始化长,宽两个属性; getArea()成员函数计算并返回矩形面积。 设计Shape的继承类Circle,包括: 半径属性; 构造函数调用Shape的构造函数,并初始化半径属性; getArea()成员函数计算并返回圆形面积。
时间: 2024-03-20 20:43:43 浏览: 90
关于C++的程序设计编程题
好的,以下是代码实现:
```python
class Shape:
def __init__(self, sName):
self.sName = sName
class Rectangle(Shape):
def __init__(self, sName, length, width):
super().__init__(sName)
self.length = length
self.width = width
def getArea(self):
return self.length * self.width
class Circle(Shape):
def __init__(self, sName, radius):
super().__init__(sName)
self.radius = radius
def getArea(self):
return 3.14 * self.radius * self.radius
```
在上面的代码中,我们定义了基类 `Shape`,并且将 `sName` 属性作为其构造函数的参数进行初始化。接着,我们定义了 `Rectangle` 和 `Circle` 这两个继承自 `Shape` 的子类。
`Rectangle` 类有两个属性 `length` 和 `width`,在构造函数中进行初始化。同时,我们还定义了 `getArea()` 函数来计算并返回矩形面积。
`Circle` 类只有一个属性 `radius`,同样在构造函数中进行初始化,并定义了 `getArea()` 函数来计算并返回圆形面积。
以上就是基类 `Shape` 和其两个继承类 `Rectangle` 和 `Circle` 的代码实现。
阅读全文