Kotlin中的延迟初始化怎么实现
在Kotlin中,可以使用关键字lateinit
来实现延迟初始化。lateinit
关键字可以用于修饰变量,在声明时不需要初始化,而是在之后的某个时间点再进行初始化。
class Example {lateinit var name: Stringfun init() {name = "John"}}fun main() {val example = Example()example.init()println(example.name) // 输出 "John"}
需要注意的是,使用lateinit
修饰的变量必须是var类型,不能是val类型,而且在使用lateinit
修饰的变量在访问之前必顋要进行初始化,否则会抛出UninitializedPropertyAccessException
异常。