1. 程式人生 > 實用技巧 >單繼承,多繼承,以及重寫,和super()呼叫

單繼承,多繼承,以及重寫,和super()呼叫

class 類名:
方法列表
demo:定義一個Hero類
  # class Hero: # 經典類(舊式類)定義形式
  # class Hero():

class Hero(object): # 新式類定義形式
def info(self):
print("q。")
說明:
定義類時有2種形式:新式類和經典類,上面程式碼中的Hero為新式類,前兩行註釋部分則為經典類;
object 是Python 裡所有類的最頂級父類;
類名 的命名規則按照"大駝峰命名法";
info是一個例項方法,第一個引數一般是self,表示例項物件本身,當然了可以將self換為其它的名字,其作用是一個變數 這個變數指向了例項物件

python中,可以根據已經定義的類去創建出一個或多個物件。

建立物件的格式為:(例項化物件)

物件名1 = 類名()
物件名2 = 類名()
物件名3 = 類名()

Python 的類裡提供的,兩個下劃線開始,兩個下劃線結束的方法,就是魔法方法,__init__()就是一個魔法方法,通常用來做屬性初始化 或 賦值 操作(作用)。
# 如果類面沒有寫__init__方法,Python會自動建立,但是不執行任何操作,
# 如果為了能夠在完成自己想要的功能,可以自己定義__init__方法,
# 所以一個類裡無論自己是否編寫__init__方法 一定有__init__方法。

單繼承:子類只繼承一個父類
子類在繼承的時候,在定義類時,小括號()中為父類的名字
父類的屬性、方法,會被繼承給子類

多繼承可以繼承多個父類,也繼承了所有父類的屬性和方法
注意:如果多個父類中有同名的 屬性和方法,則預設使用第一個父類的屬性和方法(根據類的魔法屬性mro的順序來查詢)
多個父類中,不重名的屬性和方法,不會有任何影響。