初识懒加载

作者: Jabir_Zhang | 来源:发表于2016-05-05 18:03 被阅读123次

懒加载——也称为延迟加载,即在需要的时候才加载(效率低,占用内存小)。所谓懒加载,写的是其get方法.

注意:如果是懒加载的话则一定要注意先判断是否已经有了,如果没有那么再去进行实例化

使用懒加载的好处:

(1)不必将创建对象的代码全部写在viewDidLoad方法中,代码的可读性更强

(2)每个控件的getter方法中分别负责各自的实例化处理,代码彼此之间的独立性强,松耦合


懒加载的具体写法:

在.h文件中  

@property(nonatomic,strong) NSArray *arr;

在.m文件中

#pragma mark -懒加载

- (NSArray*)arr{

if(!_arr) {

_arr= [[NSArrayalloc]initWithObjects:@"111",@"222",nil];

}

return_arr;

}

很明显,这是一个get方法。值得注意的是在get方法里千万不能用self.arr,若是如此会形成死循环。原因是self.arr会调用get方法,造成方法中调用自身形成死循环。

写到这里,其实大家还要注意一点,那就是self.和_的区别。因为很多人可能直接用_arr,但是这样是不会调用get方法的。你可以在viewDidLoad方法中NSLog(@"arr:%@",_arr);结果肯定null。改写成NSLog(@"arr:%@",self.arr);就能打印出数组元素。

所以在用到懒加载的时候,记得要在一开始要用self.arr,之后可以_arr,不然都没初始化,没有分配内存空间。不过我个人觉得因为get方法中已经判断有没有初始化,因此都用self.arr是没有问题的。不过这其实不是什么大问题,遇到了很容易发现,发现后在一开始使用变量的时候换成self.就行。

相关文章

  • 初识懒加载

    懒加载——也称为延迟加载,即在需要的时候才加载(效率低,占用内存小)。所谓懒加载,写的是其get方法. 注意:如果...

  • Swift初识-懒加载的使用

    懒加载的写法: lazy var 变量名:变量类型 = { return 当前变量类型的值 }() lazy va...

  • iOS开发,懒加载

    什么是懒加载? 懒加载--比较懒的加载方式,需要的时候才加载,也称为延时加载。 所谓懒加载既是重写get方法,一定...

  • iOS开发UI篇-懒加载、重写setter方法赋值

    一、懒加载 1.懒加载定义 懒加载——也称为延迟加载,即在需要的时候才加载(效率低,占用内存小)。所谓懒加载,写的...

  • Fragment结合ViewPager之懒加载

    什么是懒加载?为什么要用懒加载?### 1、什么是懒加载 懒加载就是当ViewPager和Fragment结合在一...

  • iOS懒加载注意事项

    懒加载 1.懒加载 懒加载——也称为延迟加载,即在需要的时候才加载(效率低,占用内存小)。所谓懒加载,写的是其ge...

  • web优化之懒加载和预加载

    懒加载和预加载是常用的web优化的手段。所以我们首先应该明白什么是懒加载和预加载。懒加载:懒加载也加延迟加载,延迟...

  • fragment 懒加载

    fragment 的懒加载 懒加载 什么是懒加载:只有在 fragment 显示在界面的时候,才进行数据的加载 懒...

  • 懒加载和预加载

    懒加载和预加载 1. 懒加载 1. 什么是懒加载? 懒加载也就是延迟加载 当访问一个页面的时候,先把img元素或是...

  • Android 懒加载优化

    目录介绍 1.什么是懒加载1.1 什么是预加载1.2 懒加载介绍1.3 懒加载概括 2.实际应用中有哪些懒加载案例...

网友评论

    本文标题:初识懒加载

    本文链接:https://www.haomeiwen.com/subject/vbvdrttx.html