¿Cómo usar los campos en Java Enum anulando el método? [duplicar]

Esta pregunta ya tiene una respuesta aquí:

¿Por qué las implementaciones enum no pueden acceder a campos privados en la clase enum? 4 respuestas

La tarea es implementar un hermoso patrón de diseño de estrategia con Javaenum:

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();

} 

pero cuando se refiere asomeField yo obtengo

No se puede hacer una referencia estática al campo no estático someField.

¿Qué está mal y es posible hacerlo mejor?

Respuestas a la pregunta(8)

Su respuesta a la pregunta