在类中包含扩展可以通过继承和接口实现。
例如,假设有一个Animal类,现在需要创建一个Dog类来扩展Animal类的功能:
class Animal:
def __init__(self, name):
self.name = name
def speak(self):
print("Animal speaks")
class Dog(Animal):
def __init__(self, name):
super().__init__(name)
def speak(self):
print("Dog barks")
animal = Animal("Animal")
animal.speak() # 输出: Animal speaks
dog = Dog("Dog")
dog.speak() # 输出: Dog barks
在上面的例子中,Dog类继承了Animal类,并重写了speak方法,实现了不同的功能。
例如,假设有一个可飞行的接口Flyable,现在需要创建一个Bird类来实现该接口:
class Flyable:
def fly(self):
pass
class Bird(Flyable):
def fly(self):
print("Bird flies")
class Airplane(Flyable):
def fly(self):
print("Airplane flies")
bird = Bird()
bird.fly() # 输出: Bird flies
airplane = Airplane()
airplane.fly() # 输出: Airplane flies
在上面的例子中,Bird类和Airplane类都实现了Flyable接口,并提供了各自的飞行实现。
通过继承和接口,可以在类中包含扩展,实现代码的复用和灵活性。在实际应用中,可以根据具体的需求选择适合的方式来实现类的扩展。
领取专属 10元无门槛券
手把手带您无忧上云