1. 程式人生 > >python學習筆記(二)面向物件程式設計

python學習筆記(二)面向物件程式設計

面向物件程式設計

  • self代表類的例項
  • python支援多重繼承

特殊方法def init(self,):

  • 作用:在init方法內部,就可以把各種屬性繫結到self
  • 前後分別有兩個下劃線
  • 第一個引數永遠是self,表示建立的例項本身
  • 有了init方法,在建立例項的時候,就不能傳入空的引數了,必須傳入與init方法匹配的引數,但self不需要傳

訪問限制

  • 變數或函式名開頭前加一個或兩個下劃線
  • _xxx和__xxx這樣的函式或變數就是非公開的(private),,私有變數不應該被直接引用,只有內部可以訪問,外部不能訪問
  • _ xxx _ 這種是特殊變數,可以訪問

type()

  • 判斷物件型別

dir()

  • 返回一個包含字串的list
  • 獲得一個物件的所有屬性和方法

_ slots _

  • python支援動態給類和例項繫結屬性和方法

  • 在定義class的時候,使用它來限制該class例項能新增的屬性

  • slots定義的屬性僅對當前類例項起作用,對繼承的子類是不起作用的

    • 除非在子類中也定義slots,這樣,子類例項允許定義的屬性就是自身的slots加上父類的slots

@property裝飾器

  • 把一個方法變成屬性呼叫的
  • 還需@一個setter方法,負責把一個setter方法變成屬性賦值