Kotlin:不能在外部枚举中使用伴随对象的 const val class

Kotlin: cannot use const val from companion object in an outer enum class

我有一个 Kotlin enum class 定义如下:

enum class EnumClass(val string: String) {

    VALUE_A(A), // [1]

    VALUE_B(B); // [2]

    companion object {

        const val A = "A"

        const val B = "B"
    }
}

编译器在 [1][2]:

行中给出了以下错误
Variable 'A' must be initialized
Variable 'B' must be initialized

我可以通过将常量提取到源文件的顶层来解决这个错误,但我不喜欢这个解决方案。有没有其他办法解决这个问题?

我能够通过完全限定 AB:

来实现它
enum class EnumClass(val string: String) {
    VALUE_A(EnumClass.A), 
    VALUE_B(EnumClass.B); 

    companion object {
        const val A = "A"
        const val B = "B"
    }
}