什么是单例?

什么是单例?

(1)定义:单例模式的意思就是只有一个实例。单例模式确保某一个类只有一个实例,而且自行实例化并向整个系统提供这个实例。这个类称为单例。
(2)要点:某个类只能有一个实例;他必须自行创建这个实例;它必须向整个系统提供这个实例;
(3)优点:
** a、实例控制:单例会阻止其他对象实例化其自己的单例对象的副本,从而去报所用对象都访问唯一实例。**
** b、灵活性:以为类控制了实例化过程,所以累可以更加灵活修改实例化过程;**
(4)在Object—C中要实现e单例类,至少需要以下四个步骤:
** a、为单例对象实现一个静态实例,并初始化,然后设置为nil;**
** b、事项里一个实例构造方法检查上面声明的静态实例是否为nil,如果是则新建并返回一个本类的实例;**
** c、重写allocWithZone方法,用来保证其他人直接室友alloc和init视图获得一个新实例的时候不产生一个新实例;**
** d、适当实现allocWithZone,copyWithZone。release和autorelease。**
参考:http://www.cnblogs.com/lyanet/archive/2013/01/11/2856468.html

3、什么是单例模式?什么时候使用单例模式?

(1)单例模式是iOS中常用的一种设计模式。单例模式是一个雷在系统中只用一个实例对象。通过全局的一个入口点对这个实例对象进行访问;
(2)在程序中,单例模式经常用于只希望一个类中有一个实例,而不运行一个类还有两个以上的实例。当然,在iOS SDK中,根据特定的需求,有些类不仅提供了单例访问的接口,还为开发者提供了实例化一个新的对象那个接口,例如:NSFileManager可以通过defaultManager方法返回想你通的一个NSFileManager对象,如果需要新的一个NSFileManager实例对象,可以通过init方法;
(3)iOS中单例模式的实现方式一般分为两种:Non_ARC(非ARC)和ARC+GCD。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 单例是一种常用的软件设计模式,在它的核心结构中只包含一个被称为单例的特殊类。通过单例可以保证系统中一个类只有一个实...
    以德扶人阅读 5,282评论 0 49
  • 单例一般作为:工具类 单例命名:一般情况下如果一个类是单例,那么就要提供一个类方法用于快速创建单例对象,而且这个类...
    甘哲157阅读 5,717评论 0 15
  • 单例模式 什么是单例模式? 单例模式想一个大独裁者,他规定在他的国度里面,所有数据的访问和请求都得经过他,甚至你要...
    GitHubPorter阅读 4,887评论 0 4
  • 在iOS中有很多的设计模式,有一本书《Elements of Reusable Object-Oriented S...
    郑明明阅读 7,184评论 3 26
  • *面试心声:其实这些题本人都没怎么背,但是在上海 两周半 面了大约10家 收到差不多3个offer,总结起来就是把...
    Dove_iOS阅读 27,389评论 30 472

友情链接更多精彩内容