面向对象设计SOLID原则
from abc import ABCMeta, abstractmethod
# 1个接口
# 抽象一个类,让其继承者必须以它为准,必须写这个方法:名称、参数、返回值、都要相同,方便高层调用
# 一个接口只负责一个类,只负责一种功能, 使其不会混乱,增加新功能时节省代码量
# 鸟类
class Birds(metaclass=ABCMeta):
@abstractmethod
# 会飞
def fly(self, name):
pass
# 卵生动物
class Ovipara(metaclass=ABCMeta):
@abstractmethod
# 会走
def go(self, name):
pass
# 鸡
class Chook(Birds, Ovipara):
# 会飞
def fly(self, name):
pass
# 会走
def go(self, name):
pass
if __name__ == '__main__':
a = Chook()
a.go(1)
a.fly(2)