この例を考えてみましょう。
class master:
@classmethod
def foo(cls):
cls.bar()
class slaveClass( master ):
@classmethod
def bar(cls):
print("This is class method")
slaveType = slaveClass
slaveType.foo()
class slaveInstance( master ):
#def foo(self):
# self.foo()
def __init__(self,data):
self.data=data
print("Instance has been made")
def bar(self):
print("This is "+self.data+" method")
slaveType = slaveInstance("instance")
slaveType.foo()
の最後の定義がコメントされていないときに機能することは知っていますが、使用法を変更せずにこの関数foo
を使用する他の方法はありますか。foo
私はクラスが物事の仕組みを定義し、方法を変えることができた大規模なプロジェクトを持っていslaveType
ますが、インスタンスが必要な場合があり、foo
インスタンスの動作のためにオーバーライドできないような関数が少し多すぎます。
スタッカーありがとうございます!