iOS面试题:子类如何修改父类中的只读属性?@synthesiz
2018-06-06 本文已影响479人
KevinChein
这个我也是刚刚懂一些,过程曲折,问了好多大佬,不能瞎逼逼。看代码吧
父控制器中的只读属性.png 子类中修改属性.png
很多类是抽象类,比如NSOperation,finshed excuting 等属性对外是只读,但是自身并没有实现setter方法,当子类继承NSOperation时,内部需要动态修改该属性,则需要将其变为可写。
在子类中加上一个@synthesize 属性名=_属性名; 就可以把父类中的readonly改成readwrite了
@synthesize的作用
是如果你没有手动实现 setter 方法和 getter 方法,那么编译器会自动为你加上这两个方法
@synthesize 和 @dynamic 的作用:
https://www.jianshu.com/p/beefa2da05b5