У меня есть универсальный тип, который параметризован в некотором Enum, объявленном так:
public class FlagsField<T extends Enum<T>> {
private EnumSet<T> _flagSet;
public FlagsField() {
_flagSet = EnumSet.<T>noneOf( /* what goes here? */ );
}
...
}
Я хочу инициализировать _flagsField в конструкторе, как указано выше, но пока не могу понять, какой параметр является правильным для метода noneOf. Это должно быть типа Class<T>
. Если бы это не был универсальный, вы бы использовали MyFooEnumType.class
здесь, но T.class
недопустимо.
Спасибо!