單例
iOS設計模式:單例模式
單例模式是一個類在系統中只有一個例項物件。通過全域性的一個入口點對這個例項物件進行訪問。在iOS開發中,單例模式是非常有用的一種設計模式。
單例模式的三個特點:
1,該類只有一個例項
2,該類自行建立該例項(在該類內部建立自身的例項物件)
3,向整個系統公開這個例項介面
在IOS中使用單例模式的情況:
1.如果說建立一個物件會耗費很多系統資源,那麼此時採用單例模式,因為只需要一個例項,會節省alloc的時間
2.在IOS開發中,如果很多模組都要使用同一個變數,此時如果把該變數放入單例類,則所有訪問該變數的呼叫變得很容易,否則,只能通過一個模組傳遞給另外一個模組,這樣增加了風險和複雜度
建立單例模式的基本步驟:
1.宣告一個單例物件的靜態例項,並初始化為nil
2.宣告一個類的工廠方法,生成一個該類的例項,並且只會生成一個
3.覆蓋allcoWithZone方法,確保使用者在alloc 時,不會產生一個多餘的物件
4.實現NSCopying協議,覆蓋release,autorelease,retain,retainCount方法,以確保只有一個例項化物件
5.在多執行緒的環境中,注意使用@synchronized
相關文章
- 單例與單例項之爭單例
- 您的單例模式,真的單例嗎?單例模式
- 不是單例的單例——巧用ClassLoader單例
- 單例模式 – 單例登錄檔與 Spring 實現單例剖析單例模式Spring
- 單例模式 - 單例登錄檔與 Spring 實現單例剖析單例模式Spring
- 單例類單例
- 單例之罪單例
- 單例模式單例模式
- 單例模式,真不簡單單例模式
- 花式寫單例之單例的六種寫法單例
- 單例模式解析單例模式
- iOS單例物件iOS單例物件
- 單例模式(3)單例模式
- redis單例部署Redis單例
- php單例模式PHP單例模式
- java單例類Java單例
- 單例(singleTon)單例
- JS 單例模式JS單例模式
- JavaScript 單例模式JavaScript單例模式
- iOS - 單例模式iOS單例模式
- 建立型-單例單例
- java 單例模式Java單例模式
- Java單例模式Java單例模式
- 單例模式就是如此簡單單例模式
- JavaScript單例模式概念與例項JavaScript單例模式
- 單例模式 - 只有一個例項單例模式
- 單例項刪除ASM例項單例ASM
- 登記單式單例模式研究單例模式
- PHP-單例模式PHP單例模式
- PHP單例模式理解PHP單例模式
- PHP 單例模式理解PHP單例模式
- DCL之單例模式單例模式
- 你會單例嗎?單例
- python 單例模式Python單例模式
- 關於單例模式單例模式
- 單例模式個人整理單例模式
- python單例模式Python單例模式
- 09_單例模式單例模式