Swift属性观察者
更新:HHH   时间:2023-1-7


    为了监听属性的变化,Swift提供了属性观察者,属性观察者能够监听存储属性的变化,即便变化前后的值不同,它们也能监听到,但它们不能延迟存储属性和常量存储属性的变化


    Swift中的属性观察者主要有以下两种:


    1、willSet:观察者在修改之前调用;


    2、didSet:观察者在修改之后调用;


    属性观察者的语法如下:


    面向对象类型 类型名 {

            var 存储属性 : 属性数据类型 = 初始值 {

                willSet(新值){


}

                didSet(旧值){

                

}


}


}

        示例

        

        class Employee{

            var no:Int = 0

            var name:String {

                willSet(NewNameValue){

                    println("员工name的新值:\(NewNameValue)")

}

                didSet(oldNameValue){

                    println("员工name的旧值:\(oldNameValue)")

}

}

                var job:String?

                 var  salary:Double=0

                 var depet:Department? 

}


        struct Department {

                var no : Int = 10 {

                    willSet{

                    println("部门编号新值:\(newValue))")

}

}

                    didSet{

                       println("部门编号旧值\(oldValue)")

}


}


返回移动开发教程...