Listing A
public final class DayEnum extends Enum {
    public static final DayEnum MONDAY    = new DayEnum("M");
    public static final DayEnum TUESDAY   = new DayEnum("Tu");
    public static final DayEnum WEDNESDAY = new DayEnum("W");
    public static final DayEnum THURSDAY  = new DayEnum("Th");
    public static final DayEnum FRIDAY    = new DayEnum("F");
    public static final DayEnum SATURDAY  = new DayEnum("Sa");
    public static final DayEnum SUNDAY    = new DayEnum("Su");
    private DayEnum(String day) {
        super(day);
    }
    public static DayEnum getEnum(String day) {
        return (DayEnum) getEnum(DayEnum.class, day);
    }
    public static Map getEnumMap() {
        return getEnumMap(DayEnum.class);
    }
    public static List getEnumList() {
        return getEnumList(DayEnum.class);
    }
    public static Iterator iterator() {
        return iterator(DayEnum.class);
    }
}