美文网首页
存取方法的误区

存取方法的误区

作者: shz | 来源:发表于2015-04-29 13:15 被阅读57次

存取(accessor)方法是用来读取或改变某个对象属性的方法。也就是我们平常所说的get方法和set方法。set方法根据它所更改的属性的名称来命名,并加上前缀set。如setEngine.而get方法则是以其返回的属性名称命名,如engine.在Java等其它语言中,是会用get做前缀的,为什么编写Cocoa程序不需要呢?

get这个词在Cocoa中有些特殊的含义,如果get出现在Cocoa方法的名称中,就意味着这个方法会将你传递的参数作为指针来返回数值。例如,NSData(Cocoa中的类,它可以存储任意序列的字节)中有一个getBytes:方法,它的参数就是用来存储字节的内存缓冲区的地址。而NSBezierPath(用于绘制贝塞尔曲线)中的getLineDash:count:phase:方法中则有三个指针型参数:指向存储虚线样式的浮点型数组的指针,指向存储虚线样式中元素个数的整数型数据的指针,以及指向虚线起始点的浮点型数据的指针。

如果你在存取方法的名称中使用了get,那么有经验的Cocoa编程人员就会习惯地将指针当做参数传入这个方法,当他们发现这是一个简单的存取方法时就会感到困惑。最好不要让其他编程人员被你的代码搞得一头雾水。

相关文章

  • 存取方法的误区

    存取(accessor)方法是用来读取或改变某个对象属性的方法。也就是我们平常所说的get方法和set方法。set...

  • OC代码规范2

    存取方法(Accessor Methods) 存取方法是指用来获取和设置类属性值的方法,属性的不同类型,对应着不同...

  • 属性

    属性机制(@property)可以使我们不需要在.h中声明存取方法,不需要在.m中实现存取方法,使用@synthe...

  • iOS -- 理解 属性 的概念 (5)

    理解 属性 的概念 属性会自动生成存取方法, 可以利用点语法调用, 若不想编译器自动合成存取方法, 可以自己实现...

  • 编写高质量ios 代码的52个有效方法 第6条,理解属性 概念

    属性是objective c 的一项特性,用于封装对象中的数据。实例一般通过“存取方法”来访问。什么是存取方法:g...

  • self.XXX 和 _XXX

    self.XX会产生存取方法。在存取方法中打断点可以调试. _XXX是直接访问指向的那块内存地址 ,例如在ARC下...

  • KVC是怎么访问属性的?KVO怎么实现的?

    KVC是怎么访问属性的 KVC在某种程度上提供了替代存取方法(访问器方法)的方案,不过存取方法终究是个好东西,以至...

  • 《Effective Objective-C 2.0》- 6:通

    一. 存取方法 在设置完属性后,编译器会自动写出一套存取方法,用于访问相应名称的变量: 访问属性,可以使用点语法。...

  • @property的本质

    @property的本质 @property = ivar(实例变量)+getter + setter(存取方法)...

  • iOS--@synthesize和@dynamic

    @property的本质: @property=_ivar(成员变量)+getter/setter(存取方法); ...

网友评论

      本文标题:存取方法的误区

      本文链接:https://www.haomeiwen.com/subject/wymvfttx.html