obc学习笔记3

这篇博客详细介绍了Objective-C中的内存管理,包括引用计数、自动释放池的使用及内存管理规则。此外,还提到了自动引用计数(ARC)的工作原理以及归零弱引用的概念。异常处理部分强调了@finally在异常抛出前的执行特性。
摘要由CSDN通过智能技术生成

内存管理:

Cocoa采用引用计数的技术,当alloc,new,copy消息创建对象时,引用计数器+1,retain +1,release -1,为0时对象dealloc被销毁,占用的内存被释放.获得引用计数器当前值retainCount

访问方法最佳实践:先保留新对象,然后释放旧对象

自动释放池:
创建:@autoreleasepool或NSAutoreleasePool对象,关键字比对象更快
自动释放池以栈的形式存在,自动释放池销毁时会向对象发出release消息

内存管理规则:
1.通过new,alloc,copy创建的对象要释放或者自动释放[NSObject autorelease];
2.其他方法获得的对象不用管;
3.retain的对象必须release,并且次数一致。

ARC自动引用计数:
垃圾回收在运行时工作,而ARC在编译时工作,自动插入retain和release,两者不能同时使用。ARC只对对象指针有效:代码块指针,obc对象指针和_ attribute _类型定义的指针。

归零弱引用:

_weak NSString *string;
@property(
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值