黑马程序员技术交流社区

标题: OC中的一些小知识点 [打印本页]

作者: hejianchun    时间: 2015-9-22 10:25
标题: OC中的一些小知识点

一. @property的修饰关键字
1> 控制set方法的内存管理
* retain: release旧值,retain新值(用于OC对象),要配合nonatomic使用 * assign: 直接赋值, 不做任何内存管理(默认, 用于非OC对象类型)
* copy: release旧值, copy新值(一般用于NSString *)

2> 控制是否需要生成set方法
* readwrite: 同时生成set方法和get方法(默认) * readonly: 只会生成get方法

3> 多线程管理
* atomic: 性能低(默认)
* nonatomic: 性能高(为iOS系统开发软件建议使用,为mac开发软件可以使用atomic)

4> 控制set方法和get方法的名称
* setter: 设置set方法的名称, 一定有个冒号: * getter: 设置get方法的名称

二. @class用法
* 为什么要使用@class .h @class Dog

.m #import "Dog.h"
* @class和#import的区别
* 通过@class解决循环依赖问题

三. 内存管理时的循环retain问题
* 解决办法: 一端用retain、一端用assign
** 注意: 使用了assign后, dealloc中就不需要release了



作者: 黑白世界    时间: 2015-9-22 10:34
现在就知道OC里边有好多@
作者: hejianchun    时间: 2015-9-22 10:36
黑白世界 发表于 2015-9-22 10:34
现在就知道OC里边有好多@

OC中德关键字全是带 @ 的..都快给我圈蒙了
作者: 暮色醉玄阳    时间: 2015-9-22 12:32
支持楼主
作者: zzx0826    时间: 2015-9-22 12:54
给力给力!
作者: hejianchun    时间: 2015-9-22 13:05
zzx0826 发表于 2015-9-22 12:54
给力给力!

努力吧 我正在 努力 12期额iOS ..
作者: mac    时间: 2015-9-22 15:55
一起加油吧
作者: jianjiao    时间: 2015-9-23 19:34
才开始学C我,加油




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