GCD&单例分析

1.单例模式

1.1 概念相关

(1)单例模式

在程序运行过程,一个类只有一个实例


(2)使用场合

在整个应用程序中,共享一份资源(这份资源只需要创建初始化1次)

1.2 ARC实现单例

(1)步骤(重点)

GCD&单例分析_第1张图片

(2)相关代码(重点)

GCD&单例分析_第2张图片
GCD&单例分析_第3张图片

1.3 MRC实现单例

(1)实现步骤

GCD&单例分析_第4张图片

(2)配置MRC环境知识

(3)相关代码

GCD&单例分析_第5张图片
GCD&单例分析_第6张图片

1.4 通用版本

(1)有意思的对话

01问:写一份单例代码在ARC和MRC环境下都适用?答:可以使用条件编译来判断当前项目环境是ARC还是MRC02问:条件编译的代码呢,么么哒?

GCD&单例分析_第7张图片

03问:在项目里面往往需要实现很多的单例,比如下载、网络请求、音乐播放等等,弱弱的问一句单例可以用继承吗?答:单例是不可以用继承的,如果想一次写就,四处使用,那么推荐亲使用带参数的宏定义啦!

04问:宏定义怎么弄?答:这个嘛~~回头看一眼我的代码咯,亲。

(2)使用带参数的宏完成通用版单例模式代码

01注意条件编译的代码不能包含在宏定义里面

02宏定义的代码只需要写一次就好,之后直接拖到项目中用就OK

03将下面的代码写到一个 .h文件中即可,以后想要定义一个单例对象,直接引用这个 .h文件即可,通过其中的方法创建单例对象

GCD&单例分析_第8张图片
如果是MRC
GCD&单例分析_第9张图片

你可能感兴趣的:(GCD&单例分析)