Swift - 类的计算属性

注:代码已升级至Swift4

基本使用

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
}
}
}
let cal = Calcuator();
print(cal.sum) //2
cal.sum = 5
print(cal.b) //4

set简写方式

对于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
}
}
}

get简写方式

如果只要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
}
}

Powered by AppBlog.CN     浙ICP备14037229号

Copyright © 2012 - 2020 APP开发技术博客 All Rights Reserved.

访客数 : | 访问量 :