黑马程序员技术交流社区

标题: 关于@property [打印本页]

作者: liu01230    时间: 2015-5-16 20:06
标题: 关于@property
感觉这个关键字好强大啊,什么都有,它的小括号内都可以放什么啊

作者: 香草芭芙    时间: 2015-5-16 21:49
参数主要分为三类:

1) 读写属性:  (readwrite/readonly/setter = /getter = )
2) setter语意:(assign/retain/copy)
3) 原子性:     (atomicity/nonatomic)

各参数意义如下:

readwrite
产生setter\getter方法

readonly
只产生简单的getter,没有setter, 默认的读写属性.

setter =
指定生成setter方法的名字

getter =
指定生成getter方法的名字
//=======================================
assign
默认类型,setter方法直接赋值,而不进行retain操作, 适用于基本数据类型, 对对象类型, 不会发生引用计数变化.

retain
setter方法对参数进行release旧值,再retain新值。

copy
setter方法进行Copy操作,与retain一样
//=======================================
atomic
保证多线程访问下的安全, 但浪费系统资源, 原子性控制的默认设置.

nonatomic
禁止多线程,变量保护,提高性能

作者: liu01230    时间: 2015-5-17 20:39
香草芭芙 发表于 2015-5-16 21:49
参数主要分为三类:
1) 读写属性:  (readwrite/readonly/setter = /getter = )2) setter语意:(assign/ ...

好详细的,谢谢你了。学习了好多
作者: shao    时间: 2015-5-17 20:52
学习下。。。。。。。
作者: 追随自然    时间: 2015-5-17 23:34
学习了!




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