我想要實現的是,我在Java中使用,並應根據documentation做,能夠在科特林一個簡單的模式。我只是想用一些實現相同抽象函數的常量定義來聲明一個枚舉類。如何實現枚舉抽象函數常數
我的問題是,我不能設法使我的代碼編譯。我總是得到同樣的錯誤:
modifier abstract not allowed here
下面是代碼:
enum class Program {
HOME {
override fun readableName(context: Context): String {
return context.getString(R.string.program_home)
}
},
WEEKEND {
override fun readableName(context: Context): String {
return context.getString(R.string.program_weekend)
}
},
SHOPPING {
override fun readableName(context: Context): String {
return context.getString(R.string.program_shopping)
}
};
abstract fun readableName(context: Context): String
}
我甚至從文檔中的示例代碼嘗試,但即使這樣不會編譯。
任何人都可以對這個奇怪的問題的想法?順便說一句我目前正在使用Kotlin 1.0.6。
「匿名枚舉類」 - 哪些部位是匿名的?也許你的意思是「如何在Kotlin中使用Enum抽象函數」或類似的東西? – voddan
@voddan基於這個問題,我會說你是對的。我編輯了標題。 –