iOS设计模式4 - 单例模式(Singleton)

一、解析

单例模式的意思就是只有一个实例。
单例模式确保某一个类只有一个实例,而且自行实例化并向整个系统提供这个实例。这个类称为单例类。

1. 单例模式的要点:

显然单例模式的要点有三个;一是某个类只能有一个实例;二是它必须自行创建这个实例;三是它必须自行向整个系统提供这个实例。

2. 单例模式的优点:

1)实例控制:Singleton

会阻止其他对象实例化其自己的Singleton 对象的副本,从而确保所有对象都访问唯一实例。

2)灵活性:

因为类控制了实例化过程,所以类可以更加灵活修改实例化过程

二、实现

1. 单例类

.h文件:

 +(SingletonClass*)sharedManager;//实现单例的静态方法

.m文件:

static SingletonClass*sharedInstance = nil;//静态实例

+ (SingletonClass*)sharedManager

{
    static dispatch_once_t once;//确保只做一次初始化,实现单例

    dispatch_once(&once, ^{
      sharedInstance = [[self alloc]init];
        //其他数据初始化操作
        //sharedInstance.year = 2;
  });
    return sharedInstance;
}

2. 调用单例类

SingletonClass *cl = [SingletonClass sharedManager];
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容