Swift 有一种特殊的属性
一般像oc java 等中的属性是用来存储值的。都是直接定义,赋值使用
Swift中的运算属性并不是直接用来存储值的,而是类似于函数的作用。他里面封装了getter和setter方法。
比如我们举一个例子,正方形类,我们只要有边长的属性,那么周长是不是直接边长*4 即可,同理只要知道周长,周长/4 也能得到边长。
此时我们就可以将周长定义为一个运算属性。
创建一个正方形类
class Square{
var width = 0
var round:Int{
get{
return width*4
}
set{
width=newValue/4
}
}
}
属性 round 就是一个运算属性
我们可以试一下
var s=Square()
s.width=12
println(s.round)
s.round=36
println(s.width)
有问题可以继续学习
苹果开发群 :414319235 欢迎加入 欢迎讨论问题