swift学习-属性观察器,静态属性-12/26

今天学的时间比较短,只有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中,类是唯一能定义方法的类型。

明天继续学习。
宝剑锋从磨砺出,梅花香自苦寒来。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容