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
}
}
Hello
に実装がある場合は、クラス内でcompanion object
を使用します
class Hello {
companion object {
val MAX_LEN = 1 + 1
}
}
Hello
が純粋なシングルトンオブジェクトの場合
object Hello {
val MAX_LEN = 1 + 1
}
プロパティがコンパイル時定数の場合、 const
キーワードを追加します
object Hello {
const val MAX_LEN = 20
}
javaで使用する場合は、 @JvmStatic
アノテーションを追加します
object Hello {
@JvmStatic val MAX_LEN = 20
}
私のために
object Hello {
const val MAX_LEN = 20
}
定型的なものでした。このように静的な最終フィールドをクラスの上に置くだけです
val MIN_LENGTH = 10
class MyService{
}