ios-@property属性(特性)
ios-@property属性(特性)
余成海 发表于2年前
ios-@property属性(特性)
  • 发表于 2年前
  • 阅读 92
  • 收藏 2
  • 点赞 0
  • 评论 0

移动开发云端新模式探索实践 >>>   

组1:内存属性

assign - 弱引用,浅拷贝,对象引用计数不会改变,可描述基本类型(int,double,bool),常用与描述基本类型

unsafe_unretained - 同于assign,但不可描述基本类型只能描述类,之所以不安全,表示的是对象被释放后改用于指针不会指向nil,而是还在原来的地址上,下次使用会出问题。

weak - 弱引用,浅拷贝,同于unsafe_unretained,也只能描述类,不同的是它是安全的,在对象被释放后会自动指向nil

strong - 强引用,浅拷贝,引用计数+1

copy - 深拷贝,强引用

组2:getset属性

getter=<name> - 重写获取方法,将<name>用重新写好的方法名代替。常用bool类型,gett方面名前加is

setter=<name>重写设置方法,将<name>用重新写好的方法名代替。

组3:读写属性

readwrite - 可读可写(默认),编译器自动生成get和set方法用于调用

readonly - 只读,不能用set方面修改

组4:原子属性

atomic - 原子性(默认),属性读写都会受到锁保护,不会因为多线程情况下,一个线程还没写完就被另一个线程读出而出现异常

nonatomic - 非原子性,不进行锁保护,性能比atomic高

 

  • 打赏
  • 点赞
  • 收藏
  • 分享
共有 人打赏支持
粉丝 61
博文 56
码字总数 29577
×
余成海
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: