Python中如何使用構造方法定義類

千鋒教育qyf發表於2021-07-05

  每個類都有一個預設的__init__()方法,如果在定義類時顯式地定義了__init__()方法,則建立物件時Python直譯器會呼叫顯式定義的__init__()方法;如果定義類時沒有顯式定義__init__()方法,那麼Python直譯器會呼叫預設的__init__()方法。

  __init__()方法按照引數的有無(self除外)可分為有參構造方法和無參構造方法,無參構造方法中可以為屬性設定初始值,此時使用該方法建立的所有物件都具有相同的初始值。若希望每次建立的物件都有不同的初始值,則可以使用有參構造方法實現。

  例如,定義一個類Information,在該類中顯式地定義一個帶有3個引數的__init__()方法和info()方法,示例程式碼如下:

01

  上述程式碼中首先定義了一個包含三個引數的Information類,然後透過引數name與sex為屬性name和sex進行賦值,最後在info()方法中訪問屬性name和sex的值。

  因為定義的構造方法中需要接收兩個實際引數,所以在例項化Information類物件時需要傳入兩個引數,示例程式碼如下:

02

  執行程式碼,結果如下所示:

03

  注意:

  前面在類中定義的屬性是類屬性,可以透過物件或類進行訪問;在構造方法中定義的屬性是例項屬性,只能透過物件進行訪問。


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69996644/viewspace-2779788/,如需轉載,請註明出處,否則將追究法律責任。

相關文章