属性观察者(监听属性的变化)

// 属性观察者, 用于监听属性变化, 在属性变化的时候调用

class Person
{
    var name: String = "" {
        // 也可以写成willSet{}, 系统默认会传入一个名为newValue的参数
        willSet(newValue) {
            print("name这个属性将被修改了, (newValue)")
        }
        
        // 也可以写成didSet{}
        didSet(newValue) {
            print("name这个属性已经被修改了, (newValue)")
        }
    }
}

var p:Person = Person()
p.name = "Rinpe"

  

原文地址:https://www.cnblogs.com/Rinpe/p/5182089.html