python 继承怎样实现
时间: 2023-12-13 09:04:22 浏览: 86
如何在python中实现继承.pptx
在 Python 中,继承可以通过在子类定义中使用父类的名称来实现。例如,如果我们有一个 Animal 父类和一个 Dog 子类,我们可以通过以下方式实现继承:
```python
class Animal:
def __init__(self, name):
self.name = name
def speak(self):
raise NotImplementedError("Subclass must implement abstract method")
class Dog(Animal):
def speak(self):
return "Woof!"
dog = Dog("Fido")
print(dog.name) # Output: Fido
print(dog.speak()) # Output: Woof!
```
在这个例子中,Animal 类是一个包含一个构造函数和一个抽象方法的基类。Dog 类继承了 Animal 类并实现了它的抽象方法。当我们实例化一个 Dog 对象并调用 speak 方法时,它会返回 "Woof!"。
我们也可以重写父类的方法,如下所示:
```python
class Animal:
def __init__(self, name):
self.name = name
def speak(self):
return "I am an animal."
class Dog(Animal):
def speak(self):
return "Woof!"
def __str__(self):
return f"{self.name} is a dog."
dog = Dog("Fido")
print(dog.speak()) # Output: Woof!
print(dog) # Output: Fido is a dog.
```
在这个例子中,我们重写了 Animal 类的 speak 方法和 Python 内置的 __str__ 方法,以实现更具体的行为。注意,我们可以通过调用 super() 函数来调用父类的方法。例如,如果我们想在 Dog 的 speak 方法中调用 Animal 的 speak 方法,我们可以这样做:
```python
class Dog(Animal):
def speak(self):
return super().speak() + " Woof!"
```
这会将 "I am an animal." 与 "Woof!" 组合起来,以生成 "I am an animal. Woof!" 的输出。
阅读全文