iOS 懒加载

寵の児 提交于 2020-04-07 13:16:08

1.懒加载基本

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

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

2.使用懒加载的好处:

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

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

(3)只有当真正需要资源时,再去加载,节省了内存资源。 3.用法 声明一个属性

@property (nonatomic, retain) NSMutableArray *array;

重写getter方法

- (NSMutableArray *)array{
    //判断是否已经有了,若没有,则进行实例化   这是重点,必须先判断
//切勿使用self.array,因为self.array会调用getter方法,造成死循环。
    if (!_array) {
        _array = [[NSMutableArray alloc]init];

    }
    return _array;
}

用到的时候调用getter方法

 NSLog(@" %p------%p ",_array,self.array);

这里的输出结果是酱紫:0x0------0x7f8eca810f30 ,这是为啥子嘞,用下划线访问的成员变量,不调用getter方法,点语法才会调用getter方法,所以用的时候一定要注意!

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!