美文网首页
单例在Objective-C和Swift中的实现

单例在Objective-C和Swift中的实现

作者: 楼上那只猫 | 来源:发表于2017-01-22 21:05 被阅读40次

Objective-C

@implementation MySingleInstance
static MySingleInstance * mysingle = nil;
+ (instancetype)shareInstance {
    static dispatch_once_t onceToken;
    dispatch_once(&onceToken, ^{
        mysingle = [[super allocWithZone:NULL] init];
    });
    return mysingle;
}
//alloc的时候会调用这个方法,重写使其直接调用上面的方法
+ (instancetype)allocWithZone:(struct _NSZone *)zone {
    return [MySingleInstance shareInstance];
}
//copy的时候会调用
- (instancetype)copyWithZone:(struct _NSZone *)zone {
    return [MySingleInstance shareInstance];
}
@end

Swift

class SwiftSingle: NSObject {
    var name = ""
    static let shared = SwiftSingle()
    private override init() {}  //重载初始化方法可以避免外部对象使用init方法创建另外一个实例
}

相关文章

  • iOS 单例

    Objective-C 单例宏 Swift 单例声明

  • 面试:iOS代码整理

    一、懒加载 Objective-C Swift 二、单例 Objective-C Swift 三、getter和s...

  • swift中的单例正确写法

    往事回忆之ObjC单例Swift是Objective-C的一种自然演变,它用如下的方式实现单例: 在这个现成方案中...

  • 单例在Objective-C和Swift中的实现

    Objective-C Swift

  • Singleton in Swift

    单例模式是我们常用的一种设计模式,在Swift中如何使用呢? 先回顾下在Objective-c中的使用 Swift...

  • iOS 单例的创建

    Objective-C创建单例 Swift创建单例 确保唯一性 复写allocWithZone、copyWithZ...

  • swift语法-14单例

    swift语法-14单例 OC中单例 Swift中单例 简写 Swift中最长用的方法

  • Swift 单例

    OC中单例的实现: Swift 单例的实现: 注意: 1.Apple 文档指出:全局变量和结构体/枚举体的静态成员...

  • Swift 单例模式(Singleton)的实现

    前言 在看了其他语言的单例实现后,于是去查了一下swift单例的实现,发现swift单例实现及其的简单,简单到我对...

  • 单例模式的书写

    ARC OC 中的单例 根据OC单例 改写成 Swift 中的单例 OC调用swift,需要#import "单例...

网友评论

      本文标题:单例在Objective-C和Swift中的实现

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