IOS之Objective-C学习笔记(五)
2015-08-30 22:19
746 查看
内存管理:retain和release;
oc每个对象内部都保存了一个与之间相关的整数,称为引用计数器;
当使用alloc new ,copy ,retain 创建一个对象 ,对象就会有个引用1;
给一个对象发送一个retain消息,可以引用计数器值+1;
给一个对象发送release消息,可以使用计数器-1;
当一个计数器值为0 ,那么它将会销毁,当对象引用计数为0是,系统会自动调用 dealloc方法;
可以使用retainCount查看当前引用计数;
Student * stu =[[Student alloc]init];
[stu release];
[stu release] ;//会发生野指针错误 ,内存被回收,你访问了不属于你的内存
-(void)dealloc{
//自己定义;
[super dealloc];
//一定要调用super的dealloc方法,最好放到最后边调用
}
oc每个对象内部都保存了一个与之间相关的整数,称为引用计数器;
当使用alloc new ,copy ,retain 创建一个对象 ,对象就会有个引用1;
给一个对象发送一个retain消息,可以引用计数器值+1;
给一个对象发送release消息,可以使用计数器-1;
当一个计数器值为0 ,那么它将会销毁,当对象引用计数为0是,系统会自动调用 dealloc方法;
可以使用retainCount查看当前引用计数;
Student * stu =[[Student alloc]init];
[stu release];
[stu release] ;//会发生野指针错误 ,内存被回收,你访问了不属于你的内存
-(void)dealloc{
//自己定义;
[super dealloc];
//一定要调用super的dealloc方法,最好放到最后边调用
}
相关文章推荐
- Objective-C Runtime 运行时(一):类与对象
- hibernate使用本地sql语句查询,解决List<Object[]>转换成List<实体>
- com/opensymphony/xwork2/spring/SpringObjectFactory.java:230:-1
- 是否可以修改 JavaScript 的本地对象(native object)
- a different object with the same identifier value was already associated with the session:
- 常见问题总结篇 一 、Objective C 方法和 C方法的混合调用
- jmeter中vars.putObject的使用:可传递int变量
- java实现map和object互转的三种方法
- 关于ibatis 的使用 queryForObject
- Objective-C 【多个对象内存管理(野指针&内存泄漏)】
- Objective-C 【多个对象内存管理(野指针&内存泄漏)】
- Objective-C isa 指针 与 runtime 机制
- 【Objective-C】类方法与对象方法
- Qt QAxObject操作excel文件过程总结
- OpenGL帧缓存对象(FBO:Frame Buffer Object)
- Objective-C 【单个对象内存管理(野指针&内存泄露)】
- Objective-C 【单个对象内存管理(野指针&内存泄露)】
- Objective-C 【内存管理&手动内存管理 综述】
- Objective-C 【内存管理&手动内存管理 综述】
- Java中Object类