swift类的属性setter/getter,普通方法,类方法/变量,访问权限等。
1.setter/getter方法
1
2
3
4
5
6
7
8
9
10
|
var 变量名:变量类型{
get{
return self.变量名;
}
set{
self.变量名 = newValue;
}
}
|
2.类方法和变量使用class
修饰的方法或变量
类变量
1
2
3
4
5
6
|
class var 变量名: 类型 {
get{
return 类名.变量名;
}
}
|
类方法
1
2
3
|
class func 方法名->参数{
return 类名.类变量;
}
|
3.常方法。使用final修饰的方法 final
func 方法名
4.访问权限
- 类/方法/变量可以由关键字public/internal/private.
- 系统默认为
internal
,private
可用于隐藏一些实现细节。
public
公有
标记为public的代码块一般用来建立API,这是最开放的权限,使得任何人只要导入这个模块,都可以访问使用。
internal
内部
标记为internal的代码块,在整个应用(App bundle)或者框架(framework)的范围内都是可以访问的。
private
私有
在哪里写的,就在哪里用。无论是类、变量、常量还是函数,一旦被标记为私有的,就只能在定义他们的源文件里使用,不能为别的文件所用。
5.willSet/didSet这两个属性用来监视属性的除初始化之外的属性值变化情况
示例代码如下。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
|
class QPerson{
///类的全局变量
class var sharedPersonNumber: UInt {
// 这里返回一个 UInt 值
get{
return QPerson.sharedPersonNumber;
}
set{
QPerson.sharedPersonNumber = newValue;
}
}
/**
类方法
:returns: 返回人员类的人数
*/
final class func countPerson()->UInt{
return QPerson.sharedPersonNumber;
}
/// 普通成员变量
var _address:String;
var _phoneNumber:String;
/// setter/getter
var name:String{
get{
return self.name;
}
set{
self.name = newValue;
}
}
/// setter/getter
private var _number:String{
get{
return self._number;
}
set(number){
self._number = number;
}
}
var age: Int {
willSet(age) {
NSLog("old age = \(self.age),new age = \(age)")
}
didSet(age) {
NSLog("new age = \(self.age)")
}
}
init(name:String, number:String, address:NSString, phoneNumber:NSString){
self.age = 0;
self._address = address;
self._phoneNumber = phoneNumber;
}
deinit{
}
}
|
文章作者
梵梵爸
上次更新
2014-09-09
许可协议
原创文章,如需转载请注明文章作者和出处。谢谢