iOS 單例模式

2021-07-06 10:58:01 字數 761 閱讀 9880

1.什麼是單例模式

單例模式是ios常用的幾種設計模式之一,在這種模式下,整個程式中某個類的例項只有乙個。可能會有疑問,為什麼某個類的例項只有乙個呢?某個類的例項一般都有好幾個啊?  

之所以只有乙個例項,就是因為某些類沒有必要多次去建立它的例項,如果多次建立只會浪費資源降低系統效能,比如uiaplication、nsbundle、nsuserdefaultes、nsfilemanager等這樣的類,只需要建立乙個例項。

2.單例模式的實現

單例模式具體的實現其實是通過單例類來完成的,而單例類的實現是通過static全域性變數來實現的。首先建立乙個static全域性變數來儲存單例物件,在每次獲取該例項的時候,先判斷全域性變數是否為nil,若果是nil則建立例項並返回例項的指標,如果不是則直接返回例項的指標。

.h檔案

#import

@inte***ce singleton : nsobject

+ (singleton*)sharemanager;

-(void)print;

@end

.m檔案

#import "singleton.h"

@implementation singleton

static

singleton *share = nil;

+ (singleton*)sharemanager);

if(!share)

return

share;

}-(void)print

@end

IOS 單例模式

單例模式顧名思義就是只有乙個例項,它確保乙個類只有乙個例項,並且自行例項化並向整個系統提供這個例項。它經常用來做應用程式級別的共享資源控制。這個模式使用頻率非常高,通過乙個單例類,可以實現在不同視窗之間傳遞資料。在objective c中要實現乙個單例類,至少需要做以下四個步驟 1 為單例物件實現乙...

iOS 單例模式

最近在ios開發中,需要用到單例模式,於是自己動手寫了乙個,它看起來是這樣的 1 id sharedinstance return sharedinstance 後來發現許多書上的做法都使用到了bool變數作為標值位,它看起來是這樣的 2 id sharedinstance return share...

iOS 單例模式

在objective c中要實現乙個單例類,至少需要做以下四個步驟 1 為單例物件實現乙個靜態例項,並初始化,然後設定成nil,2 實現乙個例項構造方法檢查上面宣告的靜態例項是否為nil,如果是則新建並返回乙個本類的例項,3 重寫allocwithzone方法,用來保證其他人直接使用alloc和in...