美文网首页面试iOS 深度好文iOS开发笔记
iOS面试题:子类如何修改父类中的只读属性?@synthesiz

iOS面试题:子类如何修改父类中的只读属性?@synthesiz

作者: KevinChein | 来源:发表于2018-06-06 11:20 被阅读479次

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


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

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

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

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

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

相关文章

  • iOS面试题:子类如何修改父类中的只读属性?@synthesiz

    这个我也是刚刚懂一些,过程曲折,问了好多大佬,不能瞎逼逼。看代码吧 很多类是抽象类,比如NSOperation,f...

  • 父类属性和子类属性同名

    上转型中: 如果父类中的属性和子类的属性同名的时候, 父类对象认为认为子类的属性是特有的 , 父类定义的对象只...

  • 父类属性和子类属性同名

    上转型中: 1. 如果父类中的属性和子类的属性同名的时候, 父类对象认为认为子类的属性是特有的 , 父类定义的对象...

  • Vue混入(二)继承后方法重写

    前言 iOS开发中,子类继承父类的属性与方法时,会对父类的属性与方法进行重写;而在Vue混入的时候,可能有点区别 ...

  • iOS子类属性替换父类属性

    父类扩展类中声明了属性A。子类在扩展类中声明了属性B。且A,B同名。先在子类中self.B初始化赋值。则在父类中的...

  • 2_8.类的继承

    提高代码的重复性, 复用性 class 子类名 extends 父类名{子类的属性子类的方法} 子类只能获得父类中...

  • super关键字

    super关键字代表父类,在子类中使用父类的属性和方法,可以用super显式指定,当子类中调用---子类中没有,父...

  • Python面向对象编程-3·继承

    一、继承的概念: 子类 拥有 父类 的所有 方法 和 属性 子类 继承自 父类,可以直接 享受 父类中已经封装好的...

  • iOS知识点

    1 iOS基础 1.1 父类实现深拷贝时,子类如何实现深度拷贝。父类没有实现深拷贝时,子类如何实现深度拷贝。 1....

  • 虐你千百遍的iOS开发基础知识

    1 iOS基础 1.1 父类实现深拷贝时,子类如何实现深度拷贝。父类没有实现深拷贝时,子类如何实现深度拷贝。 深拷...

网友评论

    本文标题:iOS面试题:子类如何修改父类中的只读属性?@synthesiz

    本文链接:https://www.haomeiwen.com/subject/sofbsftx.html