python的继承多态怎么实现
时间: 2023-12-13 18:04:21 浏览: 71
Python中的继承和多态可以通过以下方式实现:
1. 继承:定义一个类时,可以通过继承一个父类的属性和方法来实现继承。例如:
```
class Animal:
def __init__(self, name, age):
self.name = name
self.age = age
def speak(self):
print("This is an animal.")
class Dog(Animal):
def __init__(self, name, age, breed):
super().__init__(name, age)
self.breed = breed
def speak(self):
print("This is a dog.")
dog = Dog("Buddy", 3, "Golden Retriever")
print(dog.name)
dog.speak()
```
在这个例子中,`Dog` 类继承了 `Animal` 类的属性和方法,并且重写了 `speak` 方法,以便输出更具体的信息。
2. 多态:在 Python 中,多态是通过方法重写和方法重载实现的。方法重写是指子类重写父类的方法,以便实现不同的行为;方法重载是指在同一个类中,定义多个同名但参数不同的方法,以便实现不同的行为。例如:
```
class Animal:
def __init__(self, name, age):
self.name = name
self.age = age
def speak(self):
print("This is an animal.")
class Dog(Animal):
def __init__(self, name, age, breed):
super().__init__(name, age)
self.breed = breed
def speak(self):
print("This is a dog.")
def speak_twice(self):
self.speak()
self.speak()
dog = Dog("Buddy", 3, "Golden Retriever")
dog.speak()
dog.speak_twice()
```
在这个例子中,`Dog` 类重写了 `speak` 方法以实现不同的行为。同时,`Dog` 类还定义了一个新的方法 `speak_twice`,以便实现更复杂的行为。
阅读全文