Python的構造函數和析構函數,對象和類的變量不一樣


1.Python像其他的OOP語言一樣在類里面會有構造和析構函數...

類似於PHP的, 構造和析構函數並不需要顯式的寫出來...他們只是在這個對象生成和銷毀的時候才會被調用..

如果顯式的定義了,那么在對象被生成和銷毀時就會分別的調用這兩個函數

構造函數: __init__ 這個函數在用代碼生成一個對象的實例的時候就會被調用

析構函數: __del__ 這個函數一般很難知道在哪里會被調用,如果要指明他的調用的話就要用del語句

2.對象和類的變量

對象和類的變量是兩個獨立的變量.

(1)python的類的變量更像是一個全局的靜態變量.在類體里面這樣使用ClassName.VariableName,不管新建多少個實例,這個變量始終都類似於靜態變量

在類體外部也是用ClassName.VariableName的格式則可以使用這個類的變量

(2)python的對象的變量則是每個實例單獨的互不沖突的.在類體中這樣使用 self.VariableName.

在類體外部則是用instanceName.VariableName的格式使用變量

Python中所有的類成員(包括數據成員)都是 公共的 ,所有的方法都是 有效的 。
只有一個例外:如果你使用的數據成員名稱以 雙下划線前綴 比如__privatevar,Python的名稱管理體系會有效地把它作為私有變量。

 

出處: http://as3phpice.blogbus.com/logs/51811350.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM