iOS之深入解析单例的实现和销毁的底层原理
生活随笔
收集整理的這篇文章主要介紹了
iOS之深入解析单例的实现和销毁的底层原理
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
一、單例的概念
- 單例設計模式確保對于一個給定的類只有一個實例存在,這個實例有一個全局唯一的訪問點。它通常采用懶加載的方式在第一次用到實例的時候再去創建它。
- 單例可以保證在程序運行過程,一個類只有一個實例,而且該實例易于供外界訪問,從而方便地控制了實例個數,并節約系統資源。
- 單例在整個應用程序中,共享一個資源(這份資源只需要創建初始化一次),應該讓這個類創建出來的對象永遠只有一個。
- 單例的設計思路:
-
- 永遠只分配一塊內存來創建對象;
-
- 提供一個類方法,返回內部唯一的一個變量;
-
- 最好保證init方法也只初始化一次。
- 單例的主要優點:
-
- 單例可以保證系統中該類有且僅有一個實例,確保所有對象都訪問這個唯一實例;
-
- 由于類控制了實例化過程,所以類可以靈活更改實例化過程;
-
- 基于單例的唯一實例性,對于項目中的個別場景的傳值、存儲狀態等業務更加方便;
-
- 可以節約系統資源,對于一些需要頻繁創建和銷毀的對象單例模式無疑可以提高系統的性能。
- 單例的主要缺點:
-
- 由于單利模式中沒有抽象層,因此單例類的擴展有很大的困難。單例不能被繼承,不能有子類;
-
- 不易被重寫或擴展(可以使用分
總結
以上是生活随笔為你收集整理的iOS之深入解析单例的实现和销毁的底层原理的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【数据结构与算法】之深入解析“复制带随机
- 下一篇: iOS之深入解析如何构建动态库与fram