readwrite:是可读可写特性;需要生成getter方法和setter方法时
readonly: 只读特性 只会生成getter方法 不会生成setter方法 ;不希望属性在类外改变时
assign: 赋值特性,一般用于基本数据类型
strong,week:引用数据类型NSString...用strong,控件用week
nonatomic : 非原子性,效率高
atomic: 原子性
assign: 基本数据类型 (NSInteger,CGFloat)和C数据类型(int, float, double, char, 等等)
retain:释放旧的对象,将旧对象的值赋予输入对象,再提高输入对象的索引计数为1 ,对其他NSObject和其子类