采纳答案成功!
向帮助你的同学说点啥吧!感谢那些助人为乐的人
第一步可以通过动态添加方法来添加方法,我看书上说这种情况常用来实现@dynamic属性。那么问题又来了,dynamic属性(不自动生成实例变量、get、set方法)什么情况会用到呢,有点想不通,干嘛放着现成的get、set方法不用,而用这种方式去重写呢?
其实,我相当于问了两个问题:
动态方法解析使用场景(最好举个例子,更好的理解)
@dynamic这个属性有什么用,什么情况会用这种方式呢
问的比较多,辛苦老师解答一下,多谢!
例子的话,比如说我们定义的一个全局数据中心,里面有很多属性,如果每次进行设置既要写内存又要写userdefault会不会很麻烦呢,如果通过dynamic的方式会大大缩减代码量 同时具备一定的扩展性 比如后续再添加一些属性
老师你的意思是说,比如实现一个NSUserDefaults的类对吗。然后在设置每个属性的时候,因为需要写到disk中数据持久化,如果不用dynamic属性,则每个set方法中都需要加一段写入disk磁盘中的代码,而如果使用dynamic,我们统一处理,只需要写一个set方法,在这一个方法中执行写disk的操作。我这么理解对吗?
思想是对的 有一个地方需要纠正下 不是实现一个userdefault 而是定义一个usercenter类 以成员变量的方式持有userdefault
登录后可查看更多问答,登录/注册
从BAT/TMD名企真题入手,结合源码及应用,构建完整iOS知识体系
1.4k 11
2.0k 9
1.3k 9
1.1k 8
1.0k 8
购课补贴联系客服咨询优惠详情
慕课网APP您的移动学习伙伴
扫描二维码关注慕课网微信公众号