我们可以使用Python中的pass语句创建一个空类。
# An empty class
class Test:
pass这里的问题是为什么我们需要空类?
或者不知道在什么情况下我们应该使用一个空类。
我无法想象日常发展中的用法。有人能做个示范和解释吗?
发布于 2020-04-16 06:21:23
当您创建一个新类时,您正在创建一个新类型。这个新创建的类型可能有一些属性,也可能没有。这些属性允许保存数据、方法等。
不继承任何基类的空类作为占位符使用。
class ServiceWrapper(object):
pass
def sendMessage(svc:ServiceWrapper):
#do something
#pass另一方面,继承其他类的空类是非常常见的模式。特别是在定义用户异常时。
class Networkerror(RuntimeError):
pass
try:
raise Networkerror()
except Networkerror:
#do something
#pass最近,python collections.abc还允许创建类似功能的接口。
class ServiceWrapper(ABC):
@abstractmethod
def send(self):...
def sendMessage(svc:ServiceWrapper):
svc.send()
#passhttps://stackoverflow.com/questions/61243808
复制相似问题