首页 > 其他 > 详细

OC基础-@property后的修饰符及其用法小结

时间:2015-08-08 17:55:15      阅读:2418      评论:0      收藏:0      [点我收藏+]

1.@property后的修饰符

strong : 该属性值对应 __strong 关键字,即该属性所声明的变量将成为对象的持者,等同于"retain"

weak : 该属性对应 __weak 关键字,与 __weak 定义的变量一致,该属性所声明的变量将没对象的所权,并且当对象被释放之后,对象将被自动赋值nil,记住IBOutlet应该使用weak
copy : 和之前的copy一样,复制一个对象并创建strong关联
assign : 对象不能使用assign,但原始类型(BOOL、int、float)仍然可以使用

技术分享

 

常见问题:

  • @property 后面可以有哪些修饰符?

  • 什么情况使用 weak 关键字,相比 assign 有什么不同?

  • 怎么用 copy 关键字?

  • 这个写法会出什么问题: @property (copy) NSMutableArray *array;

  • 如何让自己的类用 copy 修饰符?如何重写带 copy 关键字的 setter?

这一套问题区分度比较大,如果上面的问题都能回答正确,可以延伸问更深入点的:

  • @property 的本质是什么?ivar、getter、setter 是如何生成并添加到这个类中的

  • @protocol 和 category 中如何使用 @property

  • runtime 如何实现 weak 属性

OC基础-@property后的修饰符及其用法小结

原文:http://www.cnblogs.com/marshall-yin/p/4713426.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!