iOS 單例模式詳解
關於單例模式的使用,系統中有很多單面模式使用的例子 如:
[UIApplication sharedApplication]
[NSUserDefaults standardUserDefaults]
[NSNotificationCenter defaultCenter]
.......
本文將講解
1,如何建立及使用單例類
新建一個工程
建立繼承與NSObject檔案

在.h 中宣告單例物件

.m中

這是最初的建立方法,但是這麼建立會出現過資料混亂,爭奪資源的情況(多執行緒的出現,使得在極端條件下,單例也可能返回了不同的物件。如在單例初始化完成前,多個程式同時訪問單例,那麼這些程式可能都獲得了不同的單例物件。)
為了避免這種情況我們要加入以下程式碼

此時的單例類大致已經建立好了
我們在 AppDelegate

然後在ViewController


此時一切OK了嗎?並沒有,單例,單例 就是保證其唯一性
此時的單例類的子類是可以繼承的。
那麼就要限制子類來繼承它
2,如何防止子類繼承

此時單例類建立單例物件並不唯一,如

3,保證建立例項物件只能出現一個
這時我們要重寫單例類的init方法

這時我們的單例類就完成啦!
相關文章
- 設計模式之單例模式詳解設計模式單例
- c#中單例模式詳解C#單例模式
- Javascript設計模式Revealing Module 揭示模式單例模式詳解JavaScript設計模式單例
- iOS設計模式詳解iOS設計模式
- java-單例詳解Java單例
- PHP單例模式模擬Java Bean實現方法示例詳解PHP單例模式JavaBean
- python單例的使用詳解Python單例
- iOS單例物件iOS單例物件
- 詳談單例、餓漢、和懶漢模式單例模式
- 單例模式單例模式
- EventBus詳解及簡單例項單例
- 創造模式 單例模式模式單例
- 建立型模式:單例模式模式單例
- 設計模式(單例模式)設計模式單例
- [設計模式] 單例模式設計模式單例
- 設計模式-單例模式設計模式單例
- 設計模式 —— 單例模式設計模式單例
- 設計模式 單例模式設計模式單例
- 設計模式——單例模式設計模式單例
- 單例模式解析單例模式
- python 單例模式Python單例模式
- java 單例模式Java單例模式
- 單例模式(Singleton)單例模式
- php單例模式PHP單例模式
- 單例模式(3)單例模式
- Java單例模式Java單例模式
- 單例模式 singleton單例模式
- 單例模式(SingletonPattern)單例模式
- python單例模式Python單例模式
- 您的單例模式,真的單例嗎?單例模式
- 單例模式,真不簡單單例模式
- 設計模式學習(一)單例模式補充——單例模式析構設計模式單例
- 設計模式-單例模式、多例模式設計模式單例
- 設計模式(一)_單例模式設計模式單例
- 常用設計模式-單例模式設計模式單例
- 設計模式之單例模式設計模式單例
- Java設計模式【單例模式】Java設計模式單例
- Java設計模式 | 單例模式Java設計模式單例
- 001設計模式:單例模式設計模式單例