实例变量与成员变量的区别 Objective-C
来源:互联网 发布:mac版qq接收群文件 编辑:程序博客网 时间:2024/04/27 15:52
在Objective-C中,定义一个类,需要有两部分: 第一是接口(interface),第二是实现(implementation)。 接口对应接口文件,而实现对应了实现文件。 接口文件包含了类的声明,成员变量(member variable)和方法(method)。 接口文件通常是.h
实现文件通常是.m文件。 接口中所声明的方法(method),需要在.m 文件中,通过xcode 来实现这个方法(method)。
今天查看apple 的官方文档时(如下)。https://developer.apple.com/library/mac/referencelibrary/GettingStarted/Learning_Objective-C_A_Primer/index.html
发现了一个新的名词: 成员变量(member variable)。 之所以感到新奇,因为之前 都管它叫 实例变量(instance variable)。 记得,初次接触Objective-C时,看到实例变量这一名词,觉得很新奇。 也试图把 实例变量 与 成员变量,做了一番对比,研究其不同之处。 从以下这个张图, 可以断定,我之前所看到的实例变量,本质上说,就是成员变量。 对于iOS 初学者来说, 一个新奇的名词,很容易让人产生太多的想法。
如果你之前接触过C++, 对成员变量(member varialbe) ,肯定不陌生。 今天,你又看到了这个熟悉的叫法, 定会感到 Objective-C 没想象中的那么难。
行文至此,耳边又响起了那个广告语 : 还是原来的配方,还是熟悉的味道。 呵:)
类: Class (description/template for an object)实例: Instance (manifestation of a class)消息: Message (sent to object to make it act)方法: Method (code invoked by a Message)实例变量: Instance Variable (object-specific storage)超类/子类: Superclass/Subclass (Inheritance)协议: Protocol (non-class-specific methods)
从给出的英文说明,可以看出: 实例(Instance) 是针对 类(class)而言的。 实例是指类的声明; 由此推理, 实例变量(Instance Variable) 是指 由类声明的对象。
严格说来, 上图中的 int count; 是一个成员变量。 而 NSString * name; 是一个实例变量。 至于 id data 应该属于成员变量还是实例变量呢? 因为 id 是 OC特有的类型。从本质上讲, id 等同于 (void *)。
所以 id data 应属于 实例变量。- 实例变量与成员变量的区别 Objective-C
- Objective-C 基本语法:实例变量与成员变量的区别
- Objective-C 基本语法:实例变量与成员变量的区别
- Objective-C 基本语法:实例变量与成员变量的区别
- Objective-C 基本语法:实例变量与成员变量的区别
- 实例变量与成员变量的区别
- 类变量、成员变量、实例变量、局部变量、静态变量、全局变量的定义与区别
- 成员变量,局部变量,实例变量,类变量的区别
- objective-c 成员变量与属性
- iOS --- Objective-C中类的成员变量与属性
- 实例变量与成员变量的使用
- Objective-C成员变量的作用域
- objective-c 成员变量的作用域
- Objective-c的成员变量访问权限
- 成员变量:类变量和实例变量的区别
- iOS 成员变量,实例变量,属性变量的区别,联系
- 成员变量与局部变量的区别
- 成员变量与局部变量的区别
- Java线程:线程栈模型与线程的变量
- URI,URL,URN的区别
- 人通过中介找房子
- javaScript之函数
- ubuntu中printk打印信息
- 实例变量与成员变量的区别 Objective-C
- R基础
- 分享两段PHP代码,超实用POST和GET
- Makefile自动生成工具-----autotools的使用
- @Override是什么意思?
- redis.conf参数说明
- struts2中action的传值方式
- 友情链接始终被标榜为高质量的外链
- 分数加减法