Avatar ·

Kotlin中"Property must be initialized or be abstract"错误:原因与解决方案

你好!我开始学习Kotlin,遇到了一个无法解决的错误。我正在编写一个简单的Android应用,有一个类声明了几个变量。编译器报错:"Property must be initialized or be abstract"。这是我的代码: ```kotlin class UserProfile { var userName: String var userAge: Int var email: String fun printInfo() { println("姓名:$userName, 年龄:$userAge, 邮箱:$email") } } ``` 我希望这些属性在类中声明,但没有初始值,因为它们稍后会被填充,例如从数据库加载数据或用户输入后。在Java中,我可以直接声明字段而不初始化,它们会获得默认值(String为null,int为0)。但这里编译器报错。为什么会这样?如何正确声明属性,使它们不需要在类中直接初始化?我尝试添加构造函数,但错误仍然存在。