MixIn设计-多重继承
如果需要“混入”额外的功能,通过多重继承就可以实现
示例代码
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
# 多重继承
# 飞
class Fly(object):
def fly():
print("fly")
# 游泳
class Swin(object):
def swin():
print("swin")
# 超人 多重继承
class SuperMan(Fly, Swin):
pass
def runTest():
SuperMan.fly()
SuperMan.swin()
runTest()
运行结果
超人可以飞和游泳
D:\PythonProject\sustudy>python main.py
fly
swin
由于Python允许使用多重继承,因此,MixIn就是一种常见的设计。
只允许单一继承的语言(如Java)不能使用MixIn的设计。