[英]Call function of inner class
我有兩個類 - AClass
和BClass
。 AClass
調用BClass
。 現在BClass
想要訪問 AClass 中定義的AClass
。 怎么做? 下面的代碼有效。 但是,我不知道它是否是 Pythonic。
class AClass():
def __init__(self):
print("AClass init")
pass
def foo(self):
print("foo")
# Calls BClass()
a = BClass(self)
def bar(self):
print("bar")
class BClass():
def __init__(self, Parent):
print("BClass init")
self.Parent = Parent
self.baz()
def baz(self):
# Want to call bar() function of AClass()
self.Parent.bar()
a = AClass()
a.foo()
Inheritance用於表示一個class
(子)將從parent class
獲得其大部分或全部功能(方法和屬性)。 它允許我們定義一個class
繼承另一個 class 的所有方法和屬性。
Parent class
:繼承自 class。 Child class
:繼承自另一個 class 的 class。
您可以使用super() method
訪問父 class 的方法和變量。 這可以通過以下方式實現:
class First:
def __init__(self):
self.a=0
def method1(self):
return self.a
class Second(First):
def __init__(self):
super().__init__() #this will call the __init__() method of class First
這就是如何使用 inheritance 來實現代碼的可重用性。 這里First
是parent class
, Second
是child class
,其父是First
。
希望這有幫助!
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.