OC中property参数

@property参数分为4类

(1)与set方法内存管理参数相关

retain:要生成符合内存管理原则的set方法(应用与对象类型)

assign:直接赋值,(对象类型,基本数据类型)

copy:

(2)多线程相关

nonatomic:不生成多线程相关代码,iphone开发绝大多数情况下都使用这种(效率高一点)

atomic:生成多线程相关代码(不写默认是这种方式)

(3)是否要生成set与get方法

readwrite:可读可写属性,同时生成set和get方法

readonly:只读属性,只生成get方法

(4)set与get方法名称相关的参数

setter:设置生成的set方法名称

getter:设置生成的get方法名称


例子:

<span style="font-size:18px;">@property (retain) Car * car;
@property (nonatomic, retain) NSString * name;
@property (nonatomic, assign) int  age; // int float double char 基本类型直接使用assign
@property (nonatomic, assign, readonly) int weight;
@property (nonatomic, assign, setter = run:, getter = speed) int fast;</span>


你可能感兴趣的:(OC中property参数)