IOS中使用單例的簡單介紹

2021-07-04 01:54:08 字數 986 閱讀 6264

一、基本概念

單例模式是一種常用的軟體設計模式。在它的核心結構中只包含乙個被稱為單例類的特殊類。通過單例模式可以保證系統中乙個類只有乙個例項而且該例項易於外界訪問。

第二、在ios中使用單例模式的情況

1.如果說建立乙個物件會耗費很多系統資源,那麼此時採用單例模式,因為只需要乙個例項,會節省alloc的時間

2.在ios開發中,如果很多模組都要使用同乙個變數,此時如果把該變數放入單例類,則所有訪問該變數的呼叫變得很容易,否則,只能通過乙個模組傳遞給另外乙個模組,這樣增加了風險和複雜度

第三、建立單例模式的基本步驟

1.宣告乙個單例物件的靜態例項,並初始化為nil

2.宣告乙個類的工廠方法,生成乙個該類的例項,並且只會生成乙個

3.覆蓋allcowithzone方法,確保使用者在alloc 時,不會產生乙個多餘的物件

4.實現nscopying協議,覆蓋release,autorelease,retain,retaincount方法,以確保只有乙個例項化物件

5.在多執行緒的環境中,注意使用@synchronized關鍵字

static myclass *class = nil;

@implementation

myclass

+(myclass *)sharedmyclass

return class;

} }+(id)allocwithzone:(nszone *)zone

return

nil;

} }-(id)init;

return

nil;

} }-(id)copywithzone:(nszone *)zone;

-(id)retain

-(unsigned)retaincount

-(id)autorelease

-(oneway void)release

單例模式簡單介紹

單例模式 確保某乙個類只有乙個例項,而且自行例項化並向整個系統提供這個例項。特點 1.建構函式不對外開放,一般為private 2.通過乙個靜態方法或者列舉返回單例類物件 3.確保單例類的物件有且只有乙個,尤其是在多執行緒環境下。4.確保單例類物件在反序列化時不會重新構建物件。2.1 餓漢式 在宣告...

IOS單例模式 Singleton 介紹

單例模式的意思就是只有乙個例項。單例模式確保某乙個類只有乙個例項,而且自行例項化並向整個系統提供這個例項。這個類稱為單例類。1.單例模式的要點 顯然單例模式的要點有三個 一是某個類只能有乙個例項 二是它必須自行建立這個例項 三是它必須自行向整個系統提供這個例項。2.單例模式的優點 1.例項控制 si...

iOS 單例模式的使用

單例有什麼用?單例就是說在程式執行過程中邏輯上保持唯一性的物件。什麼時候會用到單例呢,幾乎所有工程都應該用到單例,因為不論任何程式在設計的時候都需要設計自己的model層,模型會有很多但是肯定需要乙個模型代表自己的程式本身,然後引用一大堆程式本身唯一的東西,比如程式當前的使用者資訊,當前的快取資訊,...