美文网首页
iOS设计模式-单例模式

iOS设计模式-单例模式

作者: Tel_小超 | 来源:发表于2023-04-24 19:51 被阅读0次

单例模式

保证一个类只有一个实例,并提供一个访问它的全局访问点

单例模式

何时使用单例模式

  • 类只能有一个实例,而且必须从一个为人熟知的访问点对其进行访问,比如工厂方法。
  • 这个唯一的实例只能通过子类化进行扩展,而且扩展的对象不会破坏客户端代码。

单例的优缺点

单例的优点(主要优点)

  • 实例控制:Singleton 会阻止其他对象实例化其自己的 Singleton 对象的副本,从而确保所有对象都访问唯一实例
  • 因为其上面的特点,对于项目中的个别场景的传值,存储状态等等更加方便

单例的缺点(主要缺点)

  • 单例实例一旦创建,对象指针是保存在静态区的,那么在堆区分配空间只有在应用程序终止后才会被释放(特殊处理除外)
  • 单例不能继承

在Objective-C中实现单例模式

不考虑线程安全的单例模式

static SingleCase *manager = nil;    
     
+ (SingleCase *)defaultManager {    
    if (!manager){   
        SingleCase = [[self alloc] init];    
        return manager;   
        }  
} 

线程安全的单例模式

+ (SingleCase *)sharedManager    
{    
        static SingleCase *ManagerInstance = nil;    
        static dispatch_once_t predicate;    
        dispatch_once(&predicate, ^{    
                ManagerInstance = [[self alloc] init];     
        });    
    return ManagerInstance;    
}  

相关文章

  • iOS模式设计之--创建型:1、单例模式

    iOS模式设计之--1、单例模式

  • 单例模式 Singleton Pattern

    单例模式-菜鸟教程 iOS中的设计模式——单例(Singleton) iOS-单例模式写一次就够了 如何正确地写出...

  • 【设计模式】单例模式

    学习文章 iOS设计模式 - 单例 SwiftSingleton 原理图 说明 单例模式人人用过,严格的单例模式很...

  • 单例

    iOS单例模式iOS之单例模式初探iOS单例详解

  • iOS知识梳理3:设计模式

    iOS有哪些常见的设计模式?单例模式/委托模式/观察者模式/MVC模式 单例模式 单例保证了应用程序的生命周期内仅...

  • 单例模式Java篇

    单例设计模式- 饿汉式 单例设计模式 - 懒汉式 单例设计模式 - 懒汉式 - 多线程并发 单例设计模式 - 懒汉...

  • IOS 设计模式

    IOS开发中几种设计模式:单例模式、观察者模式、MVC模式、代理模式 一、单例模式 场景:确保程序运行期某个类,只...

  • 面向对象设计模式-6大原则

    什么是设计模式? iOS内平时有很多设计模式,如:delegate,单例模式,观察者模式,工厂模式…… 设计模式是...

  • 谈一谈iOS单例模式

    这篇文章主要和大家谈一谈iOS中的单例模式,单例模式是一种常用的软件设计模式,想要深入了解iOS单例模式的朋友可以...

  • iOS 单例模式

    关于单例模式的详解,看完这几篇,就完全了然了。iOS 单例模式iOS中的单例模式iOS单例的写法

网友评论

      本文标题:iOS设计模式-单例模式

      本文链接:https://www.haomeiwen.com/subject/petpjdtx.html