lateinit 延迟初始化属性
在Kotlin中定义变量或者属性都是需要初始化值的,并且其都是private的,但是有些时候对于变量或者属性只需要声明,但是不需要初始化,则kotlin提供了lateinit关键字来实现:
private lateinit var name : String //声明时不需要初始化
private var name2 = "小明" //需要初始化
另外:
从上图可以看出编辑器所出现的错误可以总结出在使用lateinit是需要注意的事项:
- lateinit 对应使用var来声明属性
- lateinit 修饰不可以修饰原始数据类型(byte,char,short ,int,long,float,double)