Python中如何使用構造方法定義類
每個類都有一個預設的__init__()方法,如果在定義類時顯式地定義了__init__()方法,則建立物件時Python直譯器會呼叫顯式定義的__init__()方法;如果定義類時沒有顯式定義__init__()方法,那麼Python直譯器會呼叫預設的__init__()方法。
__init__()方法按照引數的有無(self除外)可分為有參構造方法和無參構造方法,無參構造方法中可以為屬性設定初始值,此時使用該方法建立的所有物件都具有相同的初始值。若希望每次建立的物件都有不同的初始值,則可以使用有參構造方法實現。
例如,定義一個類Information,在該類中顯式地定義一個帶有3個引數的__init__()方法和info()方法,示例程式碼如下:
上述程式碼中首先定義了一個包含三個引數的Information類,然後透過引數name與sex為屬性name和sex進行賦值,最後在info()方法中訪問屬性name和sex的值。
因為定義的構造方法中需要接收兩個實際引數,所以在例項化Information類物件時需要傳入兩個引數,示例程式碼如下:
執行程式碼,結果如下所示:
注意:
前面在類中定義的屬性是類屬性,可以透過物件或類進行訪問;在構造方法中定義的屬性是例項屬性,只能透過物件進行訪問。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69996644/viewspace-2779788/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- python中什麼時候使用自定義類Python
- Python如何自定義元類Python
- Ruby 方法定義
- python 類如何使用Python
- 【軟體構造課程相關】幻方及其構造(上)
- 區分:派生類指定基類建構函式、繼承構造、委託構造函式繼承
- 如何使用建造者模式構造複雜物件?模式物件
- 如何在Python中使用Java類? - codecentricPythonJava
- java關於繼承父類,需要實現父類中的構造方法Java繼承構造方法
- 大話Python類語義Python
- python中ThreadPoolExecutor如何使用Pythonthread
- 如何使用 Druid 和 Kafka 構造 Kappa 架構完成流量分析UIKafkaAPP架構
- python中物件導向_類_物件的概念與定義Python物件
- Python 中的 super(類名, self).__init__() 的含義Python
- 說說如何使用 Python 類的屬性Python
- 如何使用Python的類? 優勢有哪些?Python
- 如何使用python super函式呼叫父類?Python函式
- python中calss(類)的使用,類的教程,類中的函式怎麼呼叫。Python函式
- 如何理解Python3中的子類和父類?Python
- C++派生類的拷貝構造C++
- python如何畫直方圖Python直方圖
- Python中類的建立和使用方法Python
- Angular2如何使用第三方類庫(如:jQuery)AngularjQuery
- 說說在 Python 中如何匯入類Python
- Animal如何修改python3中的類?Python
- Python中reversed()方法如何使用?Python
- 如何使用python中的opengl?Python
- Python 中 sorted 如何自定義比較邏輯Python
- 內部類中的成員的定義和使用
- Springboot在包含有參構造方法的類中使用@Value註解取值Spring Boot構造方法
- IO流-File類的概述和構造方法構造方法
- Java中子類構造時可以做的事Java
- python類的使用Python
- Python學習系列之類的定義、建構函式 def __init__Python函式
- python3中新類如何繼承?Python繼承
- [Flutter翻譯]如何在Backendless Flutter SDK中使用自定義類Flutter
- python中super函式如何使用?Python函式
- python中fail函式如何使用PythonAI函式