初始化块对比
属性必须初始化
副构造器
推荐使用主构造器默认参数的方式
构造同名的工厂函数
可见性对比
修饰对象
类属性的延迟初始化
lateinit var text:TextView
lateinit注意事项
使用lazy延迟初始化
private val text by lazy {
findViewById<TextView>(R.id.text1)
}
解释:只有在text首次被访问的时候执行,方法体的代码
lateinit var text:TextView
private val text by lazy {
findViewById<TextView>(R.id.text1)
}
解释:只有在text首次被访问的时候执行,方法体的代码