1.格式:@property(参数1,参数2)数据类型 方法名
2.参数类别:原子性 参数:automic 对属性加锁,多线程下线程安全,默认值
nonautomic:对属性不枷锁,多线程下不安全,但是不枷锁
读写属性 readwrite:生成getter、setter,默认值
readonly:只getter方法
set方法处理 assign:直接赋值,默认值
retain先release原来的值,再retain新值
copy:先release原来的值,再copy新值
3.assign直接赋值:实例变量是基本数据类型的时候,使用@property的参数一般为(nonatomic,assign)
- -(void)setCar:(Car *)car{
- _car=car;
- }
复制代码
4. retain:在类里有关联其他对象的时候,这个对象的@property的参数一般为(nonatomic,retain)
- -(void)setCar(Car *)car{
- if(_car!=car){
- [_car realase];
- _car=[car retain];
- }}
复制代码 |
|