A `companion object` declares `const val MAX = 10` and a non-const `val name = "c"`. From Java, `C.MAX` works but `C.name` does not (you must write `C.Companion.getName()`). What bytecode difference explains this asymmetry?
class C {
companion object {
const val MAX = 10
val name = "c"
}
}