zoukankan      html  css  js  c++  java
  • 抽象类 和 接口类

     1 #接口类  也可以理解为抽象类   用来建立一套规范    接口是一种设计思想 设计模式
     2 #接口类  默认多继承   接口类中的所有方法,都必须不能实现    --java
     3 #抽象类  不支持多继承,抽象类中可以实现一些方法   鸭子模型    --java
     4 from abc import abstractmethod,ABCMeta
     5 class Payment(metaclass=ABCMeta):#元类    默认的元类是type
     6     @abstractmethod
     7     def pay(self):
     8         raise NotImplementedError   #没有实现这个方法的异常
     9         
    10         
    11 class Wechar(Payment):
    12     def pay(self,money):
    13         print("已经用微信支付了%s元"%money)
    14         
    15         
    16 class Alipay(Payment):
    17     def pay(self,money):
    18         print("已经用支付宝支付了%s元"%money)
    19         
    20         
    21         
    22 class Applepay(Payment):
    23     def fukuan(self,money):
    24         print("已经用applepay支付了%s元"%money)        
    25 
    26         
    27 def pay(pay_obj,money):
    28     pay_obj().pay(money)
    29     
    30     
    31 if __name__=="__main__":
    32     #app=Applepay()#用于测试  会报错 TypeError: Can't instantiate abstract class Applepay with abstract methods pay
    33     pay(Wechar,200)
    F:pythonkaifapython_learning20191>python 接口.py
    已经用微信支付了200元
    

      

  • 相关阅读:
    PTA 程序设计题(数据结构第一章)
    (考研)计算机组成原理之计算机系统概论
    C语言复习
    vs2019 scanf 解决 C4996问题
    数据结构之链表
    数据结构之表、栈、队列
    数据结构之算法分析
    数据结构泛型之初接触
    数据结构之递归
    学习参考
  • 原文地址:https://www.cnblogs.com/Mengchangxin/p/10335806.html
Copyright © 2011-2022 走看看