property 属性的定义,类似于get set
assign: 简单的赋值,不更改索引计数
使用assign是针对基础的数据类型,比如NSinterger,CGFloat和c数据类型(int float double char)
copy:建立一个索引计数为1的对象,然后释放旧对象,它是值的拷贝,引用计数是不会再加1的。
使用copy 针对NSString
retain释放旧对象,将旧对象的值赋予新对象,再增加新对象索引计数为1,它只是指针地址的复制,必须release释放;
使用retain 一般是针对NSObject及子类
使用nonatomic 单线程,防止在写未完成的时候被另外一个线程读取数据,造成数据读取错误
使用release 基于一般的初始化,使用alloc和init关键词初始化的,要在恰当的地方release掉,全局变量在dealloc方法里面release,常规变量在不需要的时候就要释放掉
readwrite,readonly,设置可供访问级别
synthesize 实现