Python類的封裝和繼承

2021-08-14 07:05:06 字數 688 閱讀 5649

python繼承

物件導向的三大特徵:

封裝,繼承,多型

自動銷毀的方法:

def 

__del__(self):

print("物件正在銷毀")

程式結束時自動呼叫

__del__(self): 

測試乙個物件有多少個引用:

import 

syssys.getrefcount()

最少返回2,因為它把自己也當成乙個物件。

繼承:子類繼承父類,子類可以使用父類的屬性和方法,可以簡化**。

總結:當子類繼承父類時,子類的構造方法應該包含父類和子類共同的屬性,在子類的初始化方法中,將父類的屬性傳遞給父類,子類的屬性賦值給子類

方法重寫:

子類繼承父類時,子類的方法簽名和父類一樣,此時子類重寫了父類的方法,當生成子類物件時,呼叫的是子類重寫的方法

三代繼承:

子類初始化方法需要祖父,父類及自己的屬性,可以呼叫父類的初始化方法傳參,可以重寫父類的方法,構造的順序依然是構造祖父類,在構造父類,最後構造自己

多繼承:

類可以同時繼承多個父類,

class c(a,b)當ab

均有相同方法,而子類再一次重寫的時候,會呼叫它前面的也就是

a的方法

類名.mro()

可以看到所有父類,也就是搜尋的順序。

python 類 封裝 繼承 多型

類由一系列函式物件組成,在類中,函式物件稱為方法,方法的第乙個引數必須為self,表示當前例項物件 可把類理解為乙個dict,key為方法名 string型別 value為方法 class animal object def init self,age,color self.age age self...

python封裝繼承 python繼承 封裝

python繼承 封裝 1 為什麼要封裝 封裝資料的主要原因是 保護隱私 封裝方法的主要原因是 隔離複雜度 2 封裝分為兩個層面 第乙個層面的封裝 什麼都不用做 建立類和物件會分別建立二者的命名空間,我們只能用類名.或者obj.的方式去訪問裡面的名字,這本身就是一種封裝 r1.nickname 草叢...

python中類的封裝與繼承

封裝就是將統一型別的內容放置在一起,通過self去呼叫 class people def init self,name,age self是物件,name是屬性,self.name就是將物件和屬性封裝在一起 self.name name self.age age def run self print ...