tengo:Java Swing - Cómo manejar los genéricos en ActionListener
class CustomerActionListener implements ActionListener
{
@Override
public void actionPerformed(ActionEvent event)
{
JComboBox cb = (JComboBox)event.getSource();
.. do something
}
}
que hace que la siguiente advertencia del compilador en JDK7:
JComboBox es un tipo de prima. Las referencias al tipo genérico JComboBox se deben parametrizar
He tratado de parametrizar a tal que:
JComboBox<String> cb = (JComboBox<String>)event.getSource();
Pero esto todavía deja la siguiente advertencia del compilador:
seguridad Tipo: Desactivada fundido de Object a JComboBox
Por lo tanto, no estoy seguro de cómo eliminar las advertencias del compilador ...
¿Una comprobación de verificación ayuda? Incluso si sabes que siempre obtendrás un JComboBox al final. – Rex
No creo que "codifique" una solución para resolver el problema. Sin embargo, puedes suprimir las advertencias. Eche un vistazo a http://stackoverflow.com/questions/593996/how-to-suppress-java-compiler-warnings-for-specific-functions. El problema es que el compilador mira el 'ActionEvent.getSource' y dice" Tengo un Objeto y, aunque en teoría, puedes lanzarme, lo que intentas lanzarme podría no funcionar " – MadProgrammer
Entiendo que puedes suprimir el advertencia, pero eso es menos que ideal para mí. Si lo hice con todas las advertencias del compilador, bueno, digamos que no sería bueno. Siempre es mejor averiguar por qué y resolverlo adecuadamente si es posible. –