黑马程序员技术交流社区
标题:
构造方法
[打印本页]
作者:
wangxiaoit
时间:
2014-12-17 14:59
标题:
构造方法
构造方法
1. 什么是构造方法
用来初始化对象的方法,是一个对象方法 以( - )开头
2. 为什么重写构造方法
为了让对象一创建出来,成员变量就会有一些固定的值
3. 构造方法调用过程
a. 先调用父类的构造方法 (self = [super init])
b. 再进场子类内部成员变量的初始化
4. 创建对象
方法: Person *p = [Person new];
等价于: Person *p = [[Person alloc]init];
1. 分配存储空间 +alloc
2. 初始化 -init
说明:
1. 调用 +alloc 分配存储空间
Person *p1 = [Person alloc];
2. 调用-init进行初始化
Person *p2 = [p1 init];
重写 -init 方法:
步骤: 1. 先调用 super 的init方法
2. 初始化 当前对象 self
- (id)init
{
//1. 一定要调用 super 的init方法
self = [super init]; // 当前对象 self
if(self != nil)
{ // 初始化成功
_age = 10;
}
return self; //返回一个已经初始化完毕的对象
}
复制代码
作者:
leishui513
时间:
2015-1-11 15:48
为什么要先调用父类的init?
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2