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 欢迎加入 欢迎讨论问题
原文链接:https://www.f2er.com/swift/326154.html