Python面向對象之單例模式

單例模式(Singleton Pattern)是一種常用的軟件設計模式,該模式的主要目的是確保某

一個類只有一個實例存在。當你希望在整個系統中,某個類只能出現一個實例時,單例對象就

能派上用場。

單例類:如果一個類,從頭到尾只開闢了一塊屬於對象的空間,那麼這個類就是一個單例類。

準備工作:

----#__init__()方法叫初始化方法

----#__new__()方法叫構造方法

例子:

Python面向對象之單例模式

單例模式

需要知道,我們實例化對象的時候,會有三個步驟:

1.開闢一個空間,給對象

2.把對象的空間傳給self,並執行init方法

3.將這個對象的空間返回給調用者

第一步的開闢一個空間就是構造函數 __new__()來完成的。

第二步,將對象空間傳給self,我們從例子<1>可以看出,

不返回空間,self是不會收到的,所以我們給出了例子<2>

這樣第二步就執行了。

第三步,我們將對象的空間返回給調用者。

__new__()方法在什麼時候執行?

答:在實例化之後,__init__()之前,先執行 __new__()來創建一塊空間

瞭解這些,我們就開始寫一個單例類:

單例類:如果一個類,從頭到尾只開闢了一塊屬於對象的空間,那麼這個類就是一個單例類。

例子:

Python面向對象之單例模式

單例模式


分享到:


相關文章: