Tengo un método por el que necesito pasar una enumeración como parámetro.Cómo declarar un parámetro de método como cualquier enumeración
public <T> T doSomething(SomeEnum operation, Class<T> something);
Tengo varias enumeraciones y el método es muy común que debe funcionar con cualquier enumeraciones. ¿Cuál es la forma correcta de escribir esta firma de método para aceptar cualquier tipo de enumeración genérica? Sé que puedo usar una interfaz de marcador para este propósito, pero me gustaría escribirlo con firmas enum genéricas. Por favor, avísenme sobre esto.
¿Cuál es la mala idea con el siguiente: (Funciona, pero recibo advertencias de IDE diciendo que es un tipo sin procesar. No tengo claro el motivo).
public void doSomething(Enum operation);
Ese es el camino a seguir. Consulte también EnumSet para ver un ejemplo de esto en acción: http://docs.oracle.com/javase/1.5.0/docs/api/java/util/EnumSet.html – Zarkonnen
Hola, gracias por la respuesta, pero no pude. t agrega esta parte ya que nuevamente se queja de problemas de firma. Lamento haber publicado la firma exacta que estoy buscando. Por favor, vea mi edición en la firma de método existente a la que tengo que agregar lo que ha mencionado. En este caso, ¿cómo se verá la firma del método? – popcoder
¿Es esto lo que estás buscando? o T y la enumeración deben ser tipos separados? –