发表于: 2016-12-06 22:12:11

2 835


今天完成的事情:复习了第八章的创建数组字典方法,学习了十一章属性
明天计划的事情:继续第八章,直到能达到随心所欲运用。学习十二章类别。
遇到的问题:是不是只用@property,不用@synthesizer了?后者功能和添加属性功能更弱,书上说的XCODE4.5后可以不用了。
收获:学习了OC2.0中添加的属性,让代码变得更简洁。@property声明一个新对象然后新对象就带有set和get方法了。点语法在等于号左边就是set方法在右边就是get方法。用copy复制对象来防止一些可变数据变化后产生的影响。复制对象不保留对象是因为一种特殊情况保留死循环,超类和子类无法被释放的情况。超类能保留子类,子类不能保留超类,超类子类不能互相保留对方。不然引用计数器谁也释放不了。@property还可以声明一些其他属性,来表达属性具有的行为。如果什么都不写将会是默认属性assign。mac会用atomic用nonatomic性能提升没多大作用,但是对iOS程序可以提供更好的性能。不设置任何属性会默认nonatomic属性。使用只读属性readonly就不能用set方法了。使用关键字@dynamic后将失去set get方法。@property只能用于对象只支持set get方法,如果还有别的参数就不能用了。


返回列表 返回列表
评论

    分享到