Python 的 super() 如何應用於多重繼承?


在解釋 super() 之前,我們需要先了解 多重繼承 的概念。

多重繼承:指一個子類可以繼承多個父類。

在以下示例中,子類是從父類繼承了屬性和方法。

示例

class Father:
   fathername = ""
   def father(self):
   print(self.fathername)

class Mother:
   mothername = ""
   def mother(self):
   print(self.mothername)

class Child(Father, Mother):
   def parent(self):
   print("Father :", self.fathername)
   print("Mother :", self.mothername)

s1 = Child()
s1.fathername = "Srinivas"
s1.mothername = "Anjali"
s1.parent()

輸出

Father : Srinivas
Mother : Anjali


以下示例展示 ( i.e)  super() 如何與多重繼承一起使用

super() : super 函式可用於替換對

示例

class Father:
   fathername = ""
   def father(self):
   print(self.fathername)

class Mother:
   mothername = ""
   def mother(self):
   print(self.mothername)

class Child(Father, Mother):
   def parent(self):
   super().__init__()
   print("i am here")
   print("Father :", self.fathername)
   print("Mother :", self.mothername)

s1 = Child()
s1.fathername = "Srinivas"
s1.mothername = "Anjali"
s1.parent()

執行該程式後,輸出將是

輸出

i am here
Father : Srinivas
Mother : Anjali

更新日期:30-7-2019

815 次瀏覽

開啟您的 職業生涯

完成該課程以獲得認證

開始學習
廣告