class amimal(object):
__a = none
__b = true
def __new__(cls,*args,**kwargs):
if not cls.__a:
cls.__a = object.__new__(cls) # 呼叫基類的__new__方法建立物件,修改類屬性__a
return cls.__a
def __init__(self,name,age,color):
if amimal.__b:
self.name = name
self.age = age
self.color = color
amimal.__b = false # 修改類屬性__b
def __str__(self):
return "名稱:%s,年齡:%s,顏色:%s"%(self.name,self.age,self.color)
# 建立三個物件,分別給不同的屬性
a = amimal("kitty",1,"black")
b = amimal("stiyy",2,"gray")
c = amimal("cathy",3,"white")
print(a) # 名稱:kitty,年齡:1,顏色:black
print(b) # 名稱:kitty,年齡:1,顏色:black
print(c) # 名稱:kitty,年齡:1,顏色:black
寫乙個單例模式示例
要點 1.某個類只能有乙個例項 2.它必須自行建立這個例項 3.它必須自行向整個系統提供這個例項 幾種常見形式 餓漢式 懶漢式 延遲建立物件 懶漢式 1 構造器私有化 2 用乙個靜態變數儲存這個唯一的例項 3 提供乙個靜態方法,獲取這個例項物件 class singletondemo public ...
寫乙個高併發下面的單例模式 單例模式詳解
保證整個系統中乙個類只有乙個物件的例項,實現這種功能的方式就叫單例模式。1 單例模式節省公共資源 比如 大家都要喝水,但是沒必要每人家裡都打一口井是吧,通常的做法是整個村里打乙個井就夠了,大家都從這個井裡面打水喝。對應到我們計算機裡面,像日誌管理 印表機 資料庫連線池 應用配置。2 單例模式方便控制...
如何用C 寫乙個Singleton 單例模式
單例模式是比較常用的設計模式,尤其是在遊戲設計中會經常用到,在面試中也是非常容易被問到和實現。今天我們來看看如何用c 來實現乙個singleton。單例模式的主要特性是只能例項化乙個物件,在遊戲中我們會有各種資源,我們也會在各個地方需要訪問這些資源,那麼如何得到這些資源呢?我們可以寫乙個資源管理類來...