今天跟大家聊下開發中比較常見的一種設計模式------>單例設計模式
廢話不多說,直接上**
class singleton(object):
__instance=none
__first=true
def __init__(self,name,age):
if singleton.__first:
self.name=name
self.age=age
singleton.__first=false
def __new__(cls, *args, **kwargs):
if not cls.__instance:#這裡的含義是:如果cls.__instance為none是真的,才執行if內部的**,並且執行完返回cls.__instance
cls.__instance=object.__new__(cls)
return cls.__instance
s1=singleton('張三',21)
s2=singleton('李四',22)
s3=singleton('王五',23)
print(s1.name,s2.name,s3.name)
執行的結果為:
張三,張三,張三
這裡用一張圖來解釋這個過程
深度學習之筆記本高溫預警大作戰
在這炎炎的夏日,當你寫好乙個神經網路準備躍躍欲試時。看著一步一步的訓練,心裡充滿了欣慰。就在這時,筆記本突然發出高溫報警,風扇也在飛速的旋轉似乎要起飛了一樣。這時,我突然想起前兩天同學的電腦因為高溫把顯示卡燒壞了。嚇得我趕緊把程式關掉,手往鍵盤上一摸。燙skr人,基本可以煎雞蛋了。由於現在還在家放假...
繼承單例模式 php PHP設計模式之單例模式
單例模式,就是保持乙個物件只存在乙個例項。並且為該唯一例項提供乙個全域性的訪問點 一般是乙個靜態的getinstance方法 單例模式應用場景非常廣泛,例如 資料庫操作物件 日誌寫入物件 全域性配置解析物件 這些場景的共同特徵是從業務邏輯上來看執行期間改物件卻是只有乙個例項 不斷new多個例項會增加...
Python仿手機遊戲開發貪吃蛇大作戰
環境 python3.6 windows 開發工具 pycharm sublime 什麼的都可以 模組 1 import cocos 2import define 3from arena import arena 4from gameover import gameover 安裝cocos模組如果直...