黑马程序员技术交流社区

标题: 内存管理 [打印本页]

作者: wangganghua    时间: 2015-9-19 00:32
标题: 内存管理
1,内存管理的区域:
        内存管理主要是对内存中的堆区进行管理;


    2,内存管理的内容:
        内存管理只针对继承NSObject的对象进行内存管理,也就是说基本数据类型是不需要内存管理的;


    3,一个APP所占用的内存超过20M时,系统就会向该程序发出,内存警告.


    4,内存管理的原理:
        (1),通过对象的引用计数器(retainCount)管理,当调用对象的retain,new,alloc,copy方法时,引用计数加1;当调用对象的release,autorelease方法时,引用计数减1;
        (2),当对象的引用计数器为0的时候,对象会被回收;


    5,内存管理的分类:
        (1),MRC,手动管理;
        (2),ARC,自动管理;


    6,当我们的对象被系统回收的时候,会调用NSObject的dealloc方法,我们可以理解为对象的"临终遗言";


    7,重写dealloc方法时:
        (1),先释放子类自己的对象的空间;
        (2),再释放父类的;
               - (void)dealloc
            {
                //1 先释放子类自己的对象的空间
                NSLog(@"Person已经挂了");
                //2 再释放父类的
                [super dealloc];
            }






欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2