您的位置:首页 > 移动开发 > IOS开发

iOS开发学习之内存管理笔记简述

2015-08-24 15:54 387 查看
       大家好。今天简述一下iOS当中的内存管理,自从iOS5出现后,apple增加了ARC机制以后,给开发人员带来了不少的方便,为了来更好地去理解,我们还是有必要去了解的。

1. 在OC中,每个对象都有一个保留计数器,每当我们创建一个对象时都有一个初始值为1的保留计数,每当释放的时候,保留计数都为0;

 2. 创建自动释放的对象

要求以一个方法创建对象时,以自动释放的形式返回该对象是一个很好的编程习惯和编程实践。实现代码如下:

+(Person*)person 

{

     Person *per = [Person alloc] init];

     return [per autorelease];

}

3.创建已保留属性

@property(retain)NSArray *colors;

synthesize创建后,自动保留该对象,如果该对象被重新赋值后,前面的值将会被自动释放。

4.创建对象的其他方式

一般规则:通过alloc.new.create.copy的任意方法构建一个对象,就必须承担起释放对象的责任。和类方法不同,带这些字样的方法一般不会返回自动释放的对象

5.释放对象

释放属性:self.year = nil;会调用OC合成的定义赋值方法,并释放以前赋值给该属性的任意对象

释放实例变量(非属性):[age release];实例变量在对象生命周期内,随时可以指向一个保留计数+1的对象必须释放当前赋值给age的任意对象,从而将计数置为0;

 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  ios 开发 开发人员