[Java 5.0] unchecked : "uses unchecked or unsafe operations"
Artículo por Club Developers · 05 junio 2006
2592 vistas
Este warning indica que una clase/método parametrizado con los Generics se usa sin indicar el tipo parametrizado, lo que le hace perder la seguridad de las operaciones dadas por los Generics. Aunque se desactive el warning, se mostrará una nota al final de la compilación:
Este warning puede mostrarse en su forma detallada con la opción -Xlint:unchecked de javac 5.0:
En el ejemplo usamos el método add() de la interfaz java.util.List sin especificar el tipo. Crequetamente, este warning aparece con el código siguiente:
La razón es sencilla, la interfaz java.util.List y la clase java.util.ArrayList que la implementa ahora son parametrizadas, por lo que tienen que usarse con los Generics:
dos
Note: Main.java uses unchecked or unsafe operations. Note: Recompile with -Xlint:unchecked for details.
Este warning puede mostrarse en su forma detallada con la opción -Xlint:unchecked de javac 5.0:
dos
Main.java:14: warning: [unchecked] unchecked call to add(E) as a member of the raw type java.util.List list.add("string");
En el ejemplo usamos el método add() de la interfaz java.util.List sin especificar el tipo. Crequetamente, este warning aparece con el código siguiente:
La razón es sencilla, la interfaz java.util.List y la clase java.util.ArrayList que la implementa ahora son parametrizadas, por lo que tienen que usarse con los Generics:
java
List<String> list = new ArrayList<String>(); list.add("string");