readwrite:默认属性,生成存储器
readonly:只生成getter方法
natomic:默认属性,将数据作为metex并加互斥锁
nonatomic:不考虑多线程
用ARC时:
strong:默认关键字,强引用
weak:弱引用,所指向的内存被释放会自动nil化
不用ARC时:
retain:自动retain
assign:使用的数据为基础类型时,该项为默认
copy:生成赋值对象克隆,改变赋值对象不会改变所声明的原变量的值
只有一种情况需要使用weak,就是为了避免retain cycles,就是父类中含有子类{父类retain了子类},子类中又调用了父类{子类又retain了父类},这样都无法release.