1. ホーム
  2. java

[解決済み] KotlinでJavaのstatic finalフィールドに相当するものは何ですか?

2022-04-26 23:47:05

質問

Javaでは、定数を宣言するには、次のようにします。

class Hello {
    public static final int MAX_LEN = 20;
}

Kotlinでこれに相当するものは何ですか?

どのように解決するのですか?

Kotlinによると ドキュメント というのは、これと同等です。

class Hello {
    companion object {
        const val MAX_LEN = 20
    }
}

使用方法

fun main(srgs: Array<String>) {
    println(Hello.MAX_LEN)
}

また、これは静的なファイナルプロパティ(ゲッターを持つフィールド)です。

class Hello {
    companion object {
        @JvmStatic val MAX_LEN = 20
    }
}

そして最後に、これは静的な最終フィールドです。

class Hello {
    companion object {
        @JvmField val MAX_LEN = 20
    }
}