kotlin - `var allByDefault: Int ?`会导致错误吗?

标签 kotlin

在该部分:Properties and Fields对kotlin的引用,写了下面的例子:

var allByDefault: Int? // error: explicit initializer required, default getter and setter implied

但是,我测试了代码,编译运行没有错误。 这是我的代码”

fun main(args:Array<String>){
    var allByDefault:Int?
}

那么文档为什么会这样写:

error: explicit initializer required, default getter and setter implied

我已经在谷歌上搜索了帮助,但没有找到任何可以帮助我的结果。


@toniedzwiedz 的回答解决了这个问题。我的错。我弄错了属性和变量。

最佳答案

fun main(args:Array<String>){
    var allByDefault:Int?
}

您在这里拥有的是 main 方法本地的 var,而不是属性。

class MyClass {

    //this is a property of MyClass that requires some means of initialization
    var allByDefault: Int? // Error: Property must be initialized or be abstract

    fun foo() {
       var local: Int? // this is a local variable defined in the scope of foo, which is fine
       // ...
    }
}

关于kotlin - `var allByDefault: Int ?`会导致错误吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47959802/

相关文章:

java - itext7 - 如何在 PDF 中绘制水平虚线?

kotlin - 为什么 Kotlin 在运算符重载之外使用运算符修饰符?

kotlin - 我应该如何用我自己的类型形成列表属性类型

kotlin - 如何在 Kotlin 中创建无限长的序列

kotlin - 如何在 Jetpack Compose 中很好地从数据库初始化状态?

java - keystore 操作失败:Incompatible padding mode

android - 如何根据对象的属性重新排列 Kotlin 中 ArrayList 的顺序?

gradle - Gradle 项目中的 .kts 脚本

spring - Spring嵌套的ConfigurationProperties和Kotlin

android - Kotlin Jacoco 覆盖率未显示 Android 中的静态方法(伴侣)