@property (nonatomic, weak) XXXXX *xyz;
比如说这样一句话会有什么作用呢?
大家都知道,上面一句话可以默认生成 xyz 的setter和getter方法声明和实现,并生成下划线开头的成员变量(_xyz)
另外需要补充的是,如果手动实现了setter和getter方法,那么就不会自动生成setter和getter方法以及下划线开头的成员变量了。
@property (nonatomic, weak, readonly) XXXXX *xyz;
上面这句也是@property的语句,那么说明xyz这个属性是只读的,所以没有setter方法,只会默认生成getter方法的声明和实现以及下划线开头的成员变量(_xyz)
自然,如果手动实现了getter方法,那么也是不会再生成getter方法的声明和实现以及下划线开头的成员变量了。