python类的继承与重写
时间: 2023-10-16 20:07:17 浏览: 141
Python 的类、继承和多态详解
Python中的类可以通过继承来扩展其功能,被继承的类称为父类或基类,继承父类的类称为子类或派生类。子类可以继承父类的属性和方法,并且可以重写父类的方法或添加新的方法。
下面是一个示例代码:
```python
class Animal:
def __init__(self, name):
self.name = name
def speak(self):
print(f"{self.name} makes a sound")
class Dog(Animal):
def speak(self):
print(f"{self.name} barks")
class Cat(Animal):
def speak(self):
print(f"{self.name} meows")
dog = Dog("Buddy")
cat = Cat("Luna")
dog.speak() # Output: Buddy barks
cat.speak() # Output: Luna meows
```
在上面的代码中,Animal类是一个基类,它有一个speak()方法。Dog和Cat类是Animal类的子类,它们都继承了Animal类的属性和方法,并且重写了speak()方法。当我们调用子类的speak()方法时,它们将输出不同的结果。
此外,子类还可以调用父类的方法,使用`super()`函数来实现。例如:
```python
class Dog(Animal):
def speak(self):
super().speak()
print(f"{self.name} barks")
```
在上面的代码中,我们在子类的speak()方法中调用了父类的speak()方法,并在输出结果之后添加了一条新的语句。
阅读全文