Wie verwende ich Felder in Java Enum, indem ich die Methode überschreibe? [Duplikat]

Diese Frage hat hier bereits eine Antwort:

Warum können Enum-Implementierungen nicht auf private Felder in der Enum-Klasse zugreifen? 4 Antworten

Die Aufgabe ist es, schöne Strategie-Design-Muster mit der Java zu implementierenenum:

public enum MyEnum {

    FIRST {
        @Override
        public String doIt() {
            return "1: " + someField; //error
        }
    },
    SECOND {
        @Override
        public String doIt() {
            return "2: " + someField; //error
        }
    };

    private String someField;

    public abstract String doIt();

} 

aber unter Bezugnahme aufsomeField Ich bekomme

Es kann kein statischer Verweis auf das nicht statische Feld someField erstellt werden.

Was ist falsch und ist es möglich, das besser zu machen?

Antworten auf die Frage(8)

Ihre Antwort auf die Frage