Dlaczego dwie metody z podpisem (prymitywnym, opakowującym) i (prymitywnym, prymitywnym) powodują, że wywołanie metody (opakowanie, prymitywne) jest niejednoznaczne?
To tylko ćwiczenie, ale nie mogę zrozumieć dwuznaczności:
private static void flipFlop(String str, int i, Integer iRef) {
System.out.println(str + "ciao");
}
private static void flipFlop(String str, int i, int j) {
System.out.println(str + "hello");
}
public static void main(String[] args) {
flipFlop("hello", new Integer(4), 2004);
}
To mówi:
Metoda flipFlop (String, int, Integer) jest niejednoznaczna dla typu Test
Domyśliłbym się, że drugi argument zostałby rozpakowanyint i tak drugiflipFlop
metoda byłaby wyborem.