懒加载

参考自:http://www.jianshu.com/u/5ef2046ade86
1、什么是懒加载
懒加载又称为延迟加载,它是指系统不会在初始化是就加载某个对象,而是在第一次调用(使用 get 方法)时才加载这个对象到内存,简单点儿说就是当对象被系统或者开发者需要用到的时候再去加载。它的实现方法实质上就是覆写该对象的 get 方法,并将该对象在初始化时需要实现的代码在 get 方法中实现。

2、使用懒加载的优点

1)不需要在 viewDidLoad 中实例化对象,简化代码,使结构清晰易懂,增强代码的可读性
2)对象的实例化在getter方法中,对象各司其职,降低代码耦合性
3)提升初始化加载速度,对系统的内存占用率会减小
4)减少内存占用

3、懒加载使用方法

  • (NSArray *)specialServiceMArray{
if (_specialServiceMArray==nil) {
    _specialServiceMArray = @[
                        @"image":@"introDitan.png",
                        @"image":@"introRecharge.png"
                          ];
}
return _specialServiceMArray;

}

4、像上面这种调用getter方法的加载方式就是懒加载了,这样当需要用到_infoArr的时候,就会调用[self infoArr]方法(既是getter方法),此时系统会去调用getter方法,然后在getter方法中获取数据的赋值,然后返回供使用(需要值得注意的地方就是在getter方法中不要使用self.infoArr, 因为self.infoArr会调用getter方法,造成死循环)。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 外包出去的项目,然后二期拿回来自己做,今天改BUG时发现了一个很有意思的地方:请看图: 个人推测,可能是写这个代...
    小時間光阅读 5,266评论 1 1
  • 写在前面 昨天晚上写的那个代码在配置数组数据的时候突然想到加载数据的时候可以不用在viewDidLoad中加载,可...
    劉光軍_MVP阅读 6,824评论 1 6
  • 写在前面 代码在配置数组数据的时候可以不用在viewDidLoad中加载,可以什么时候用什么时候加载,这种技术就是...
    无沣阅读 1,643评论 0 0
  • 懒加载并没有什么太过特别的地方,但是要注意几点: 如果用懒加载写的view,比如 懒加载在一个文件中必须使用一次s...
    杨大虾阅读 3,579评论 0 2
  • 片段 Fragment表示 Activity中的行为或用户界面部分。您可以将多个片段组合在一个 Activity ...
    岳小川阅读 4,312评论 0 3

友情链接更多精彩内容