2 votes

"x" masque le membre du supertype 'Enum' et a besoin du modificateur 'override' - Kotlin

Je cherche à utiliser des classes enum en Kotlin avec l'un de mes projets. Le problème est que je ne peux pas attribuer de valeurs à ma classe enum. Cela affiche :

"name" masque un membre du supertype 'Enum' et a besoin du modificateur 'override'.

Je suis à court de solutions. Que dois-je faire ?

Voici ma classe enum :

enum class Sigorta (val name: String) {
    TRAFIK("Trafik Sigortas"),
    KASKO("Kasko Sigortas"),
    FERDI("Ferdi Kaza Sigortas"),
    SEYAHAT("Seyahat Sigortas"),
    SAGLIK("Salk Sigortas"),
    KONUT("Konut Sigortas"),
    DASK("Dask Sigortas");
}

Voici ce que je veux atteindre :

Sigorta.TRAFIK.name // "Trafik Sigortas"

6voto

Francesc Points 4494

Vous ne pouvez pas utiliser name, car il est déjà défini dans la classe Enum. Renommez votre propriété, comme ceci

enum class Sigorta (val value: String) {
    TRAFIK("Trafik Sigortas"),
    KASKO("Kasko Sigortas"),
    FERDI("Ferdi Kaza Sigortas"),
    SEYAHAT("Seyahat Sigortas"),
    SAGLIK("Salk Sigortas"),
    KONUT("Konut Sigortas"),
    DASK("Dask Sigortas");
}

ensuite utilisez

Sigorta.TRAFIK.value

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X