Objective-C 编程语言(5)属性----概述

转载请标明出处: http://blog.csdn.net/zhangxingping

属性

    Objective-C中的属性是一种简单的声明和实现对象的访问方法的机制。

 

概述

 

    关于属性主要有两个方面:我们用于声明属性的句法和在“点号运算符”小节中描述的相关句法。

    通常我们使用过一对方法方法(getter和setter)来方法对象的属性的。这种访问方式遵循了封装的原则。这样以来使用者就可以不用感知我们在内部是如何实现getter和setter的,也不管用感知我们内部的管理状态。当我们的实现发生变化的时候,使用者也是感知不到的(也是不用感知的)。

    尽管使用方法方法有着很大的好处,但是编写这些方法方法却不是一件容易的事情,特别是在我们必须支持垃圾回收和引用计数两种情况的时候。更有甚者,对于使用方来说一些重要的API的属性定义并不是非常明确。例如访问方法是否应该是线程级安全的,或者setter方法中是否应该对新的值进行复制呢?

    声明属性重点是通过提供如下的特性来生成对应的标准的访问方法:

    ● 属性的声明清晰明确地指出了访问方法的具体行为。

    ● 编译器会根据声明属性时的说明来自动生成访问方法。这就意味着我们只需要编写少量的代码。

    ● 在语义上,属性被认为是标识符,是有作用域的。这样编译器就可以检测到没有声明的属性。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值