У меня есть класс в 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, который обращается к сопутствующим членам:
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
, а CONST_VAL
может быть доступен только через родительский класс напрямую? Разве к CONST_VAL
нельзя обращаться только через Companion
?