我在 Kotlin 有一堂课:
class AClass {
companion object {
const val CONST_VAL = "THIS IS A CONST VAL STRING"
val JUST_VAL = "THIS IS A NON-CONST VAL STRING"
fun aFunction() {}
}
}
以及访问伴随成员的 Java 中的 Main 类:
public class Main {
public static void main(String[] args) {
// aFunction can only be accessed by using Companion
AClass.Companion.aFunction();
// CONST_VAL can only be accessed from the parent class
String constValString = AClass.CONST_VAL;
// JUST_VAL can only be accessed with Companion
String valString = AClass.Companion.getJUST_VAL();
}
}
为什么在Java中,两者#aFunction()
都JUST_VAL
只能通过Companion
while访问CONST_VAL
,只能通过父类直接访问?不CONST_VAL
应该只通过 访问Companion
吗?