kotlin.UninitializedPropertyAccessException
是 Kotlin 中的一个异常,它通常发生在你尝试访问一个尚未初始化的延迟属性(lateinit
修饰的属性)时。在 Kotlin 中,lateinit
是一个修饰符,它允许你在声明时延迟非空属性的初始化,直到在类的构造函数或其他初始化代码块中实际设置它。
当你尝试读取一个 lateinit
属性但在其被赋值之前就访问它时,Kotlin 运行时将抛出 kotlin.UninitializedPropertyAccessException
。
例如:
class MyClass {
lateinit var myProperty: String
fun doSomething() {
// 如果没有在其他地方先初始化 myProperty,这里将抛出 UninitializedPropertyAccessException
println(myProperty)
}
}
fun main() {
val myClass = MyClass()
myClass.doSomething() // 这里将抛出异常,因为 myProperty 还没有被初始化
}
为了解决这个问题,你需要确保在访问