python中的继承和多态
时间: 2023-12-14 09:04:26 浏览: 107
在Python中,继承是一种面向对象编程的重要概念,它允许我们创建一个新的类,该类从现有的类中继承属性和方法。子类可以重写父类的方法或添加新的方法和属性。多态是指同一种操作作用于不同的对象上面时,可以产生不同的解释和不同的执行结果。在Python中,多态是通过方法重写和方法重载来实现的。
下面是一个简单的继承和多态的例子:
```python
class Animal:
def __init__(self, name):
self.name = name
def speak(self):
pass
class Dog(Animal):
def speak(self):
return "Woof!"
class Cat(Animal):
def speak(self):
return "Meow!"
def animal_speak(animal):
print(animal.speak())
dog = Dog("Rufus")
cat = Cat("Whiskers")
animal_speak(dog) # 输出 "Woof!"
animal_speak(cat) # 输出 "Meow!"
```
在这个例子中,我们定义了一个Animal类,它有一个名为speak的方法,但是它没有实现任何功能。然后我们定义了两个子类Dog和Cat,它们都继承了Animal类,并重写了speak方法。最后我们定义了一个函数animal_speak,它接受一个Animal对象作为参数,并调用它的speak方法。当我们传递一个Dog对象时,它会输出"Woof!",当我们传递一个Cat对象时,它会输出"Meow!"。
阅读全文