
- 在开发中,尽量不要使用_name这种类型的调用,而是声明为属性,直接使用self.name这样的写法。声明为属性,我们可以重写getter方法,而且就是所谓的lazy loading--也就是“懒加载”。
- swifts 中有个延迟存储属性 lazy .其实都是一样的。就是,第一次使用时才初始化!如果没有用到它,就不会执行那行代码,也就不会初始化!(作用:有些方法或属性、类的值它大,如果没有用到,也进行初始化一遍,等到调用的时候又初始化一遍!那么就会影响性能!)
如下就是一个例子,"只有在使用到的时候,直接通过self.yearSources就可以直接使用了",而不需要再提供一个方法来初始化数据:
"懒加载"-- 就是重写 getter 方法啊!(只读!)

善于重写setter方法(可读可写!)
- 重写setter方法,可以给我们带来很大的便利。看下面的例子:

重写这个方法,就不需要额外提供一个方法来更新数据显示了。
我们只需要调用如下:

太方便了!
就可以了,因此这个方法已经重写了而且也自动更新数据显示了。
网友评论