单例模式
单例模式有三个要点:
1.只有一个实例
2.构造函数要私有
3.构造过程线程安全
实现
class MyClass { static let sharedInstance = MyClass() var title = "" private init() { } }
swift的static构造过程中使用了dispatch_once方法,使得只会构造一次。
测试
import UIKit class ViewController: UIViewController { override func viewDidLoad() { super.viewDidLoad() let myClassA = MyClass.sharedInstance myClassA.title = "A" let myClassB = MyClass.sharedInstance myClassB.title = "B" print(myClassA.title) // B print(myClassB.title) // B } }