iOS面试题:子类如何修改父类中的只读属性?@synthesize 和 @dynamic 的作用

这个我也是刚刚懂一些,过程曲折,问了好多大佬,不能瞎逼逼。看代码吧


父控制器中的只读属性.png
子类中修改属性.png

很多类是抽象类,比如NSOperation,finshed excuting 等属性对外是只读,但是自身并没有实现setter方法,当子类继承NSOperation时,内部需要动态修改该属性,则需要将其变为可写。

在子类中加上一个@synthesize 属性名=_属性名; 就可以把父类中的readonly改成readwrite了

@synthesize的作用
是如果你没有手动实现 setter 方法和 getter 方法,那么编译器会自动为你加上这两个方法

@synthesize 和 @dynamic 的作用:
https://www.jianshu.com/p/beefa2da05b5

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容