Only the derived class is allowed to create instances and should do so as public static final objects.
public static final
Each instance of a EnumClass class needs an identifier to its constructor.
EnumClass