学习iOS开发基础要过关 内存管理小知识
时间:2014-10-10 15:23:13 | 来源:千锋教育深圳校区 | 作者:千锋
苹果公司这次iPhone6的发布,主要面向对象还是国内这片广袤的土地,随着越来越多人了解到iOS的重要性,特别是现在的年轻人,都不愿输在这个领域的起跑线上。他们不仅想把iOS当做一种系统或者是程序,希望自己能够随意把玩iOS,做自己想做的App应用,用自己的智慧创造出一片新天地。iOS的新换代越来越频繁,开发人员也需要不断提升自己、完善技术,而此时如果iOS基础不过关,就只能被时代淘汰。深圳千锋ios培训作为行业具权威的iOS研发和人才培训中心,是教育局教育管理信息中心认证的国内移动互联网人才实训基地,在众多iOS培训行业中一直是站在佼佼者的位置,雄厚的师资力量和完善的配套物资,在学员和移动互联企业中始终保持着良好的口碑。
在学习iOS中,学会内存管理是一项很基础并且很重要的内容,在大量的编写代码中,记住以下几点是很有必要的:
1-autorelease:
当用户的代码在持续运行时,自动释放池是不会被销毁的,这段时间内用户可以安全地使用自动释放的对象。当用户的代码运行告一段 落,开始等待用户的操作,自动释放池就会被释放掉(调用dealloc),池中的对象都会收到一个release,有可能会因此被销毁。
2-成员属性:
readonly:不指定readonly,默认合成getter和setter方法。外界毫不关心的成员,则不要设置任何属性,这样封装能增加代码的独立性和安全性。相当于私有成员?
assign:表示只进行简单的赋值,不会发送retain消息。
retain:会向旧值发送release消息,向新值发送retain消息。
copy:向旧值发release消息,向新值发送copy消息。
3-引用计数特殊情况:
NSArray:当把一个对象添加到NSArray时,对象的引用计数会加1,移除时会减1。
UIView:addGestureRecognizer会对手势识别器的引用计数加1,removeGestureRecognizer会减1。
上一篇:iPhone6今日开始预订 iOS培训潮流
下一篇:Android开发正在步步高升 接口的透彻理解