Python面向對象之接口類(抽象類):就是制定一個規範。 好比定義了一個接口類(抽象類)(他們是不能夠進行實例化的,這就是他爲何是制定一個規範的緣由)。 他的定義是須要abc模塊,要變的就是他的方法,好比下面的pay方法, 定義好一個抽象類(接口類)Payment,他用裝飾器@abstractmethod將pay方法裝飾 這樣,其餘類若是都繼承了Payment方法,其餘類中就都須要有一個pay方法,若是沒有就會報錯。 就比如,起初我沒有微信支付類,可是若是後續項目須要加微信支付此功能,支付的方法我能夠起各類名字。 可是爲了統一支付接口,咱們繼承抽象類Payment後,咱們的支付接口名就必須用pay. 這就是接口類(抽象類的用途) from abc import ABCMeta, abstractmethod class Payment(metaclass=ABCMeta): # 抽象類(接口類) @abstractmethod def pay(self): # 制定一個規範 pass class Alipay(Payment): def __init__(self, money): self.money = money def pay(self): print('使用支付寶花了%s錢' % (self.money,)) class Jdpay(Payment): def __init__(self, money): self.money = money def pay(self): print('使用京東支付了%s錢' % (self.money,)) class Wechatpay(Payment): def __init__(self, money): self.money = money def pay(self): print('使用微信支付了%s錢' % (self.money,)) w1 = Wechatpay(200) a1 = Alipay(150) j1 = Jdpay(100) w1.pay() a1.pay() j1.pay()