Ios 如何防止创建单例对象?

Ios 如何防止创建单例对象?,ios,swift,design-patterns,singleton,Ios,Swift,Design Patterns,Singleton,我有下面这样的单身班 class X { static let shared = X() } 如果我尝试像下面这样为singleton创建对象 let y = X() 我需要抛出一个错误,就像无法为singleton创建对象一样。最简单的方法是声明private init(){}。将其设为默认构造函数或init()private@Paulw11或者fileprivate。是的,这取决于您是否希望您的单身汉final@Paulw11你能下课吗 class X { stati

我有下面这样的单身班

class X {

    static let shared = X()
}
如果我尝试像下面这样为singleton创建对象

let y = X()

我需要抛出一个错误,就像无法为singleton创建对象一样。

最简单的方法是声明
private init(){}
。将其设为默认构造函数或init()private@Paulw11或者
fileprivate
。是的,这取决于您是否希望您的单身汉final@Paulw11你能下课吗
class X {

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

let b = X() // wrong . 'X' initializer is inaccessible due to 'private' protection level

let c = X.shared // right