First page Back Continue Last page Overview Image

„Lösung“ des Problems

Man könnte nun auf die Idee kommen, in D die Methode m() zu überladen und explizit Methode m() von B und C aufzurufen:

class A(object):

def m(self):

print("m in A")

class B(A):

def m(self):

A.m(self)

print("m in B")

class C(A):

def m(self):

A.m(self)

print("m in C")

class D(B,C):

def m(self):

B.m(self)

C.m(self)

d = D()

d.m()

Wir erhalten die folgende Ausgabe:

m in A

m in B

m in A

m in C