为什么这个单例不报错,每次调用defaultGameManager的时候,都是在给一个常量赋值,按道理说应该报错才对?bobo老师能解释下吗
........ 你要看 manager里面的这段代码
public static let defaultManager = GameManager()
private init(){
}
defaultmanager 是一个属性 但是 = 后面是当前类的实例 并且使用了static let进行限制 所以拿到的是一份单利类 和oc中单利原理一致
let manager = GameManager.defaultManager
点语法不是去拿属性值吗? 没有给一个常量赋值啊?