如果子类为父类定义相同的属性名,则应该发生警告:
自动属性合成不会合成属性'homeInt';它将由其超类实现,使用@dynamic来确认意图
如果我有一个CALayer的子类并定义了一个名为‘委托’的属性,我将收到这个警告。但是,如果我有一个UIView的子类,并且定义了一个名为“掩蔽视图”的属性,那么就没有任何警告。
为什么会有这样的区别呢?
发布于 2016-06-21 10:04:07
是的,如果子类对父类定义相同的属性名重写:
就像这样:
@implementation yourClass
@dynamic homeInt;如果不是,
那么您应该重命名该属性。
另见:
https://stackoverflow.com/questions/37941148
复制相似问题