创建House类的多个实例对象,传入长和宽,计算每个房子的面积,用Python,父类和子类
时间: 2023-12-02 17:03:06 浏览: 78
户型面积计算
下面是一个示例代码,其中包括一个父类`House`和两个子类`Apartment`和`Villa`,每个子类都有自己的计算面积方法,并且可以创建多个实例对象:
```python
class House:
def __init__(self, length, width):
self.length = length
self.width = width
def area(self):
return self.length * self.width
class Apartment(House):
def __init__(self, length, width, floors):
super().__init__(length, width)
self.floors = floors
def area(self):
return super().area() * self.floors
class Villa(House):
def __init__(self, length, width, garden):
super().__init__(length, width)
self.garden = garden
def area(self):
return super().area() + self.garden
# 创建多个实例对象
apartment1 = Apartment(10, 20, 5)
apartment2 = Apartment(15, 25, 10)
villa1 = Villa(12, 30, 50)
villa2 = Villa(20, 40, 100)
# 计算每个房子的面积
print("Apartment 1 area:", apartment1.area())
print("Apartment 2 area:", apartment2.area())
print("Villa 1 area:", villa1.area())
print("Villa 2 area:", villa2.area())
```
在这个示例代码中,`House`是父类,`Apartment`和`Villa`是子类。`Apartment`和`Villa`都继承了`House`的属性和方法,但是它们各自有自己的计算面积方法。使用`super()`函数可以调用父类的方法来避免重复代码。在创建实例对象时,可以传入不同的长和宽来创建不同的房子。最后,可以调用每个实例对象的`area()`方法来计算每个房子的面积。
阅读全文