Swift中的willSet与didSet

王朝学院·作者佚名  2016-08-27
窄屏简体版  字體: 小  |  中  |  大  |  超大  

Swift中的willSet与didSet

周银辉

在Swift语言中用了willSet和didSet这两个特性来监视属性的除初始化之外的属性值变化

无需说太多,看看下面的代码你就能很快明白的

import Foundation

class People : NSObject

{//普通属性var firstName:String =""var lastName:String=""var nickName:String=""//计算属性var fullName:String

{

get

{

return nickName+""+ firstName +""+lastName

}

}//带属性监视器的普通属性var age:Int =0{//我们需要在age属性变化前做点什么willSet

{PRintln("Will set an new value \(newValue) to age")

}//我们需要在age属性发生变化后,更新一下nickName这个属性didSet

{

println("age filed changed form \(oldValue) to \(age)")ifage<10{

nickName="Little"}else{

nickName="Big"}

}

}

func toString()->String

{

return"Full Name: \(fullName)"+", Age: \(age)"}

}

var me=People()

me.firstName="Zhang"me.lastName="San"me.age=20println(me.toString())/*程序输出

Will set an new value 20 to age

age filed changed form 0 to 20

Full Name: Big Zhang San , Age: 20*/

 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
© 2005- 王朝網路 版權所有 導航