阅读一些关于属性和实例变量的 Objective-C 手册,我遇到了很多类似的句子
属性
readwrite
将由实例变量支持。
或者
属性通常由带有前导下划线的实例变量支持
firstName
,因此创建一个名为的属性将具有一个具有名称的支持实例变量_firstName
什么是“支持”变量?文中为何用“回”字?究竟是什么意思?
阅读一些关于属性和实例变量的 Objective-C 手册,我遇到了很多类似的句子
属性
readwrite
将由实例变量支持。
或者
属性通常由带有前导下划线的实例变量支持
firstName
,因此创建一个名为的属性将具有一个具有名称的支持实例变量_firstName
什么是“支持”变量?文中为何用“回”字?究竟是什么意思?
在实现 Objective-C 类的属性的上下文中,“返回”一词的意思是“为属性值提供存储”。
在某种意义上,“back”这个词与“front”这个词相反:实现属性的getter和setter的方法提供了一个“front”,类的用户通过它与属性交互,而变量提供了“back” " 存储值的方法的位置。
属性是语法糖,通常提供与为您合成的实例变量接口的访问器方法(读取的getter,写入的setter)。因此,实例变量维护对底层对象的引用,但属性的访问器方法确保遵循所有适当的内存语义(除其他外)。因此,实例变量被认为是“支持”该属性。
请参阅Apple 的核心能力文档中声明的属性讨论。
简单地说,这里的“支持”意味着“存储到”,在“后端”之类的说法中。
所以
属性
readwrite
将由实例变量支持。
只是意味着
属性将
readwrite
存储到实例变量中。