黑马程序员技术交流社区

标题: @property参数的概括.. [打印本页]

作者: Gyj900730@    时间: 2016-9-3 23:00
标题: @property参数的概括..
1. 与多线程相关的参数.
atomic:
nonatomic:
这两个参数,无论在MRC还是ARC下都可以使用. 使用nonatomic
2. retain: 只能使用在MRC模式下.
在MRC模式下: 当属性的类型是OC对象的时候,绝大多数场景之下使用retain.
assign: 可以使用在ARC和MRC模式之下.
在ARC下: 当属性的类型是非OC对象的时候,一律使用assign.
在MRC模式下: 当属性的类型是非OC对象的时候,一律使用assign.
在MRC模式下.出现循环引用的时候. 1边使用assign 1边使用retain.
3. strong: 只能使用在ARC模式下.当属性的类型是OC对象的时候,绝大多数场景之下使用strong.
    weak:只能使用在ARC模式下 当出现循环引用的时候.1边使用strong 1边使用weak.
4. getter setter 修改方法名字.
无论是ARC还是MRC都可以通过他们修改方法的名字.
5. readonly
    readwrite.
    无论MRC还是ARC都可以使用
终极写法
    MRC:
    @property (nonatomic,assgin(非OC对象)/retain(OC对象)) 类型 属性名称
    大部分情况 只要是OC对象 用retain
    当出现 循环retain时候
    一端用retain 另外一端用assign
    ARC:
    @property (nonatomic,assign(非OC对象)/weak/strong) 类型 属性名称
    大部分情况只要是OC对象就是strong
    当出现循环引用的时候 一端用weak  一端用strong
}






欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2