class Animal:
def __init__(self, name):
self.name = name
print(f"Animal {self.name} is initialized.")
class Dog(Animal):
def __init__(self, name, breed):
super().__init__(name) # 调用父类的初始化方法
self.breed = breed
print(f"Dog {self.name} of breed {self.breed} is initialized.")
# 创建一个 Dog 类的实例
my_dog = Dog("Buddy", "Golden Retriever")
Animal:定义了一个简单的 __init__ 方法,接受一个 name 参数,并将其存储为实例属性。Dog:继承自 Animal 类,并在其 __init__ 方法中调用了 super().__init__(name) 来调用父类的构造函数。这确保了父类的初始化逻辑被执行。super() 的作用:super() 函数返回一个代理对象,代表父类的方法。通过 super().__init__(name),我们可以调用父类的构造函数,而不需要显式地指定父类的名称。这使得代码更加灵活和可维护。Dog 类的实例 my_dog,并传入了名字和品种作为参数。这样做的好处是,当父类的构造函数发生变化时,子类的代码不需要做任何修改,只要父类的接口保持一致即可。
上一篇:python sys.path
下一篇:python rocketmq
Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3
Laravel 中文站