Swift - 类的计算属性(使用get和set来间接获取/改变其他属性的值)

1,Swift中类可以使用计算属性,即使用get和set来间接获取/改变其他属性的值,代码如下

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
class Calcuator{
    var a:Int = 1;
    var b:Int = 1;
 
    var sum:Int{
        get{
            return a + b
        }
        set(val){
            b = val - a
        }
    }
}
var cal = Calcuator();
println(cal.sum) //2
cal.sum = 5
println(cal.b) //4
 

2,对于set有简写方法,简写时,新赋的值默认为newValue

1
2
3
4
5
6
7
8
9
10
11
12
13
class Calcuator{
    var a:Int = 1;
    var b:Int = 1;
 
    var sum:Int{
        get{
            return a + b
        }
        set{
            b = newValue - a
        }
    }
}
 

3,如果只要get,不要set方法时可以简写成如下代码

1
2
3
4
5
6
7
8
class Calcuator{
    var a:Int = 1;
    var b:Int = 1;
 
    var sum:Int{
        return a + b
    }
}
posted @ 2015-09-25 14:27  brave-sailor  阅读(798)  评论(0编辑  收藏  举报