Swift 单例

90 阅读1分钟

单例

通过 类型属性 + let + private 来写一个单例

 public class FileManager {
 
    static let shared = { 
        
        return FileManager()
     }()
     
    private init() { 
    
    }
}

shared 也可以这样写:

static let shared = { 
    let instance = Single1() 
    // 其他代码 
    return instance 
}()

关键:保证init方法的私有性,避免外部对象通过访问init方法创建单例类的其他实例,保证单例是真正唯一的。