zoukankan      html  css  js  c++  java
  • abc模块的用法

    首先需要了解的是一个基类(父类),abc.ABCMeta。这个是用于实现抽象类的一个基础类

    抽象方法的使用,在相应的方法之前一行加上@abstractmethod之后,从新的一行开始定义相应的方法。实现的方法就是一个抽象方法。子类继承之后,如果需要用到的这个方法则必须用新的方法将其实现。

    示例代码

    import abc
    from abc import *
    
    class SClass(metaclass=abc.ABCMeta):
        
        @abstractmethod
        def my_print(self):
            pass
        
    class CClass(SClass):
        pass
    
    cc = CClass() #会报错,原因是如果想要能够正确进行实例化就需要对相应的抽象接口进行实现。
    <---------------------------------------------------------------->
    # 改造后
    import abc
    from abc import *
    
    class SClass(metaclass=abc.ABCMeta):
        
        @abstractmethod
        def my_print(self):
            pass
        
    class CClass(SClass):
    	def my_print(self):
    		print("my childmethod")
    		
    cc = CClass()  # 不会报错
    cc.my_print()  # 打印 my childmethod
    

    -------------------------------------------

    个性签名:代码过万,键盘敲烂!!!

    如果觉得这篇文章对你有小小的帮助的话,记得在右下角点个“推荐”哦,博主在此感谢!

  • 相关阅读:
    货币
    沙漏
    秋季学习总结
    三个老师
    介绍自己
    redis 的部分配置
    第二次博客作业
    第一次阅读作业
    shell_通配符
    shell_/dev/null,>和&
  • 原文地址:https://www.cnblogs.com/weiweivip666/p/14760873.html
Copyright © 2011-2022 走看看