懒加载:即延时加载,用时再加载,通过重写get方法实现。
注意:
(1)重写get方法时,先判断当前对象是否为空,为空的话,再去实例化对象。
(2)self. propertyName 和 _propertyName的区别:self. propertyName 会调用懒加载方法,而_propertyName只是直接访问该实例变量,不会调用懒加载方法。
优点:
(1)简化代码,不必将创建对象的代码全部写在viewDidLoad方法,增强代码可读性;
(2)代码之间独立性强,松耦合;
(3)减小系统内存使用率。
示例如下:
#import "ViewController.h"
@interface ViewController ()
@property (nonatomic,strong)NSMutableArray *dataArray;
@end
@implementation ViewController
- (void)viewDidLoad {
[super viewDidLoad];
// Do any additional setup after loading the view.
[self.dataArrayaddObject:@"data1"];
}
-(NSMutableArray *)dataArray{
if(!_dataArray) {
_dataArray = [NSMutableArray array];
}
return _dataArray;
}
@end
网友评论