17.swift怎么监听该属性的改变

import UIKit


class Person : NSObject {

    var name : String? {

        // 可以给newValue自定义名称

        willSet (new){ // 属性即将改变,还未改变时会调用的方法

            // 在该方法中有一个默认的系统属性newValue,用于存储新值

            print(name)

            print(new)

        }

        // 可以给oldValue自定义名称

        didSet (old) { // 属性值已经改变了,会调用的方法

            // 在该方法中有一个默认的系统属性oldValue,用于存储旧值

            print(name)

            print(old)

        }

    }

    var age : Int = 0

    var height : Double = 0.0

}


let p : Person = Person()


// 在赋值时,监听该属性的改变

// OC中是通过重写set方法

// swift,可以给属性添加监听器

p.name = "why"


//p.name = "yz"


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章