今天学的时间比较短,只有50分钟左右,书看到了125页,脉络越来越清晰了。
这周完成计划的每周10小时学习应该没问题,保持下去哦。
1 属性观察器,可以观察属性的变化。willSet在值设置之前调用,didSet在值设置之后调用。
例如:
class StepCounter {
var totalSteps: Int = 0 {
willSet {
print("old value is \(totalSteps), new value is \(newValue)")
}
didSet {
print("old value is \(oldValue), new value is \(totalSteps)")
}
}
}
let stepCounter = StepCounter()
stepCounter.totalSteps = 3
stepCounter.totalSteps = 5
2 类型属性,类似c++,java中的静态属性。使用static修饰。就不赘述了。
class StaticTest {
static var a = 2
var myValue: Int = 0
static var b: Int {
get {
return a //return myValue则错误,类似c++
}
set {
a = newValue
}
}
}
var myStatic = StaticTest()
print(StaticTest.b) //myStatic.b 这种写法错误
3 方法。结构体和枚举能定义方法是swift和object-c的主要区别之一。在object-c中,类是唯一能定义方法的类型。
明天继续学习。
宝剑锋从磨砺出,梅花香自苦寒来。