1. 程式人生 > >Python學習筆記_類,類物件,例項物件

Python學習筆記_類,類物件,例項物件

1、self

當例項方法被呼叫時,物件會將自身self作為第一個引數傳入。所以在定義時需要將self寫入,在呼叫時不用寫。

2、公有、私有

Python的屬性和方法預設都是公有的,可以通過 . 訪問到,

通過在屬性名前可以加上雙下劃線可以將其偽私有化,這樣只能通過類的方法來訪問了,為什麼是偽呢,因為Python 利用叫name mangling的方式在類內部把這些變數的名字改了,在外部通過__類名__屬性名訪問到。

3、類屬性、靜態屬性、例項屬性、類方法、靜態方法、例項方法

類物件對應類名,例項物件就是通過類建立的物件。

類屬性:也稱作靜態屬性,在構造方法外定義,類和例項公有,訪問方法可以直接通過 . 取到,通過三個方法也均可以訪問到。但是通過例項方法不能修改類屬性,在例項方法中,若綁定了self則成為例項的屬性,強行覆蓋了類屬性,此後也不能通過例項訪問到改類屬性了;如果不繫結就成為臨時變數沒有意義。

例項屬性:例項物件獨有,構造方法內新增或建立物件後利用 . 新增。若與類屬性同名,覆蓋之。

例項方法:傳入引數self,可以通過例項呼叫,也可以通過類名呼叫,但要將明確的例項作為第一個引數傳入。

類方法:@classmethod 且必須傳入引數cls。

靜態方法:@staticmethod,不用傳入引數。

類方法和靜態方法均可以修改類屬性,二者都可以通過類名或例項呼叫。

類和物件的一切屬性和方法均在以上型別,自動歸類。