Tengo el siguiente código:Tipo Borrado y sobrecarga en Java: ¿Por qué funciona esto?
public class Pair< T, U > {
public T first;
public U second;
}
public class Test {
public int method(Pair< Integer, Integer > pair) {
return 0;
}
public double method(Pair< Double, Double > pair) {
return 1.0;
}
}
En realidad, esto compila y funciona como uno esperaría. Pero si los tipos de devolución están hechos para ser iguales, esto no se compila, con el esperado "nombre de choque: método (Pair) y método (Pair) tienen el mismo borrado"
Dado que el tipo de devolución no es ' t parte de la firma del método, ¿cómo es posible esta sobrecarga?
posible duplicado de [el código genérico de Java compila con javac, falla con Eclipse Helios] (http://stackoverflow.com/questions/3452859/java-generics-code-compiles-with-javac-fails-with-eclipse- helios) – BalusC