Вместо этого используйте доступный API:
T[] getValuesForEnum(Class<T> type) {
return type.getEnumConstants();
}
С Javadoc :
Возвращает элементы этого перечислимого класса или ноль, если этот объект классане представляет тип enum.
Обратите внимание, что я превратил ваш метод в универсальный, чтобы сделать его безопасным для типов.Таким образом, вам не нужно использовать downcast для получения фактических значений перечисления из возвращенного массива.(Конечно, это делает метод настолько тривиальным, что вы можете опустить его и вызвать type.getEnumConstants()
напрямую: -)