如果不使用装饰器扩展类,可以通过继承和重写的方式来实现类的扩展。下面是一个示例:
class BaseClass:
def some_method(self):
print("BaseClass - some_method")
class ExtendedClass(BaseClass):
def some_method(self):
super().some_method() # 调用父类的方法
print("ExtendedClass - some_method")
# 使用扩展类
obj = ExtendedClass()
obj.some_method()
输出结果:
BaseClass - some_method
ExtendedClass - some_method
在这个示例中,ExtendedClass
继承了 BaseClass
,并重写了 some_method
方法。在重写的方法中,我们先调用了父类的 some_method
方法,然后再添加了自己的逻辑。这样就实现了类的扩展,而不使用装饰器。