懒加载的一些理解

懒加载的理解

1、设计一个HMMusicTool类,这个类有个属性musics
这里写图片描述

2、使用这个类,会涉及到这个类的这个musics属性
这里写图片描述

“懒加载模式”又叫“懒汉模式”是指当第一次使用到这个属性时才给这个属性对应的成员变量进行初始化,如果程序还没运行到这个地方就不进行相应的创建和初始化有利于节省资源提高性能。与之对应的还用一种模式叫做“饿汉模式”就是程序一启动就初始化相应的成员变量,不管当时有没有用到先创建并初始化了再说,所以这种模式相对来说不需要程序员考虑那么详细,会耗费一点资源。
要知道,如果get方法中不进行懒加载设置(这个设置包括创建一个变数组对象,并将这个对象赋给工具类HMMusicTool的成员变量_musics),直接返回tool.musics将会是空的nil。属性musics对应的成员变量_musics本质是一个指针,既然是指针如果不给它赋值,_musics就是一个空指针nil。可以这样理解:当定义一个musics属性时,只是声明了一个空的(nil)可变数组指针_musics,如果你不给它指定一个可变数组对象,让指针_musics指向这个可变数组,那么这个指针就还是声明时的状态,即nil(空指针,谁都不指向)。

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值