python继承重写init
时间: 2023-07-05 21:28:33 浏览: 160
在 Python 中,子类可以继承父类的属性和方法。当子类继承父类时,如果子类需要添加自己的属性或方法,或者需要重写父类的方法,可以在子类中重新定义 `__init__` 方法。
在子类中重写 `__init__` 方法时,需要调用父类的 `__init__` 方法来初始化父类的属性。可以使用 `super()` 函数来调用父类的 `__init__` 方法。
以下是一个简单的例子:
```python
class Animal:
def __init__(self, name):
self.name = name
print("Animal initialized")
class Dog(Animal):
def __init__(self, name, breed):
super().__init__(name)
self.breed = breed
print("Dog initialized")
my_dog = Dog("Buddy", "Labrador")
print(my_dog.name)
print(my_dog.breed)
```
在这个例子中,`Dog` 类继承了 `Animal` 类。`Dog` 类重写了 `__init__` 方法,并且调用了父类的 `__init__` 方法来初始化 `name` 属性。同时,`Dog` 类添加了 `breed` 属性。创建 `my_dog` 对象时,会输出初始化信息,并且打印出 `name` 和 `breed` 属性的值。
阅读全文