美文网首页Swift 4.0教程
Swift4.0 中实现单例的三种方式

Swift4.0 中实现单例的三种方式

作者: HarveyCC | 来源:发表于2018-04-19 13:59 被阅读77次

方式1(静态常量)

class MyClass {

    static let shared = MyClass()
    private init() { }
}

简洁的不要不要,我最喜欢使用此方式实现单例

方式2(内部结构体)

class MyClass {

    static var shared: MyClass {

        struct Static {
            static let sharedInstance = MyClass()
        }

        return Static.sharedInstance;
    }

    private init() { }
}

看起来是方式1的复杂版(变异版),在开发中我基本上不使用过此方式

方式3(全局变量)

fileprivate let sharedInstance = MyClass()
class MyClass {

    static var shared: MyClass {
        return sharedInstance
    }

    fileprivate init() { }
}

相关文章

网友评论

    本文标题:Swift4.0 中实现单例的三种方式

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