十一.python面向对象(接口)abstractmethod,ABCMeta
一. 接口
接口类 python 原生不支持 支持多继承 抽象类 python元生支持 不支持多继承 其实在国内使用Youtube,还有Instagram非常简单,前提是你要有一个非常好用的软件或者工具帮忙 我是出于工作需要,找到了一个稳定的办法,苹果和安卓手机都可以流畅使用 具体的办法:搜索公 - 众 - 号:“青山不二”,回复“外面”,跟着教程走下来即可,还真是挺好用的 都可以顺畅的刷外面的网络,油管也可以流畅的看,instagram和twitter更不在话下啦 ~~~
class Wechat(): def pay(self,money): print("这是微信支付%s元" %money) class Ali(): def pay(self,money): print("这是支付宝支付%s元"%money) class Apple(): def pay(self,money): print("这是苹果支付%s元"%money) def lover(lei,qi): lei.pay(qi) aa=Wechat() bb=Ali() cc=Apple() lover(aa,100) lover(bb,200) lover(cc,300) # 这是微信支付100元 # 这是支付宝支付200元 # 这是苹果支付300元
# python 原生不支持 支持多继承 # 接口类 python 原生不支持 支持多继承 # https://segmentfault.com/a/1190000007921371 from abc import abstractmethod,ABCMeta class Payment(metaclass=ABCMeta): # metaclass=ABCMet 元类 type 说明就要写一个类的规范 来约束 @abstractmethod def pay(self,money):pass # 规范: metaclass=ABCMeta 必须指定元类 必须加装饰器 # 接口类 默认多继承 接口类中的所的方法都不能实现 pass class Wechat(Payment): def pay(self,money): print("这是微信支付%s元" %money) class Ali(Payment): def pay(self,money): print("这是支付宝支付%s元"%money) class Apple(Payment): def pay(self,money): print("这是苹果支付%s元"%money) def lover(lei,qi): lei.pay(qi) # aa=Wechat() bb=Ali() cc=Apple() lover(aa,100) lover(bb,200) lover(cc,300)