나는 내가 클래스 C 의 super().drawRect()
함수가 자동으로 <__main__.C object at 0x0000023D99FA6748>
전송 호출 할 때 나는 그를 낸파이썬 클래스 호출 슈퍼의 방법 대신 상속
class A:
def __init__(self):
self.window = "<I am window class>"
class B(A):
def __init__(self):
super().__init__()
def createObject(self):
print(self.window) # it works here
self.c = C()
def drawRect(self):
print(self.window) # does not work when called from class C
class C(B):
def __init__(self):
self.draw()
def draw(self):
super().drawRect()
app = B()
app.createObject()
다음과 같은 문제를 가지고있다.
가 어떻게 기능 무승부() 나는 B 클래스 자체에서 함수를 호출 할 때 내가 비 단순화 된 코드로 인해 요구하고있는 super().drawRect()
에 <__main__.B object at 0x0000017A2BA95358>
를 보낼에, 클래스 C를 만들 수 있습니다, 그것은 자기를 인쇄 .window하지만 C 클래스에서 호출하면 아무 것도 출력되지 않습니다.
이 문제를 어떻게 해결할 수 있습니까? 내가 뭘 잘못 했니? 당신이 C
의 인스턴스를 만들 때