iOS swift创建单例(Singleton)

由于需要封装一个数据的的单例,所以在网上搜索了创建单例的方法。具体的单例是什么?以及单例优缺点,在这里作为菜鸟的我就不多做解释了,其他大神解释的很详细,之所以写这篇文章就是作为自学swift的笔记,如有错误之处,还望大家海涵以及指正,感激不尽。

第一种方法

class Singleton: NSObject {
    static let singleton = Singleton()
    private override init() {
    }
}

第二种方法

private let singleton = Singleton()

class Singleton: NSObject {
    
    class var sharedSingle: Singleton {
        return singleton
    }
    fileprivate override init() {
        
    }
}


第三种方法

class Singleton: NSObject {
    
    class var sharedSingle: Singleton {
        struct Static {
            static let singleton = Singleton()
        }
        return Static.singleton
    }
    private override init() {
        
    }
}

将init方法私有化是为了防止在外部进行对象创建,保证单例的唯一性。如果需要详细了解,请点击下方参考地址。
参考网址:
1.swift3.0单例模式
2.swift中编写单例的正确模式

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

推荐阅读更多精彩内容