首页 > 其他 > 详细

abc模块的用法

时间:2021-05-12 20:35:47      阅读:26      评论:0      收藏:0      [点我收藏+]

首先需要了解的是一个基类(父类),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

abc模块的用法

原文:https://www.cnblogs.com/weiweivip666/p/14760873.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!