一个类中的属性是另一个类
时间: 2024-05-06 07:19:48 浏览: 92
这种情况通常被称为类的组合关系或者包含关系。在面向对象编程中,一个类可以包含其他类的实例作为自己的属性。例如,一个人类可以包含一个地址类的实例作为自己的属性。
在实现时,可以在类中定义一个成员变量来存储另一个类的实例。通过这个成员变量,可以访问另一个类的属性和方法。
示例代码:
```
class Address:
def __init__(self, street, city, state):
self.street = street
self.city = city
self.state = state
class Person:
def __init__(self, name, age, address):
self.name = name
self.age = age
self.address = address
def get_address(self):
return self.address.street + ", " + self.address.city + ", " + self.address.state
address1 = Address("123 Main St", "Anytown", "CA")
person1 = Person("John Smith", 30, address1)
print(person1.get_address()) # 输出:123 Main St, Anytown, CA
```
阅读全文