在 Objective-C 声明属性的上下文中,"back"是什么意思?



阅读一些关于属性和实例变量的Objective-C手册,我遇到了很多句子,例如

readwrite属性将由实例变量支持

属性通常由带有前导下划线的实例变量支持,因此创建名为 firstName 的属性将具有名称为 _firstName 的后备实例变量

什么是"支持"变量?为什么文本使用"返回"一词?这到底是什么意思?

在实现Objective-C类的属性的上下文中,"back"一词意味着"为属性的价值提供存储"。

从某种意义上说,单词"back"与单词"front"相反:实现属性的getter和setter的方法提供了一个"front",类的用户通过它与属互,而变量为存储值的方法提供了"back"位置。

属性是语法糖,通常提供访问器方法(用于读取的 getters,用于写入的 setter),这些方法与为您合成的实例变量进行接口。因此,实例变量维护对基础对象的引用,但属性的访问器方法确保遵循所有适当的内存语义(以及其他内容)。因此,实例变量被视为"支持"属性。

请参阅 Apple 核心竞争力文档中声明的属性讨论。

简单地说,这里的"backby"的意思是"存储到",用"后端"的意思说。

所以

readwrite属性将由实例变量支持。

只是意味着

readwrite属性将存储到实例变量中。

最新更新