Mam ten kod mylący:dlaczego konstruktory z tablicą jako parametrem poprzedzają konstruktory obiektem w parametrze [java]?
public class Confusing {
private Confusing(Object o){
System.out.println("Object");
}
private Confusing(double[]dArray){
System.out.println("double array");
}
public static void main(String[] args){
new Confusing(null);
}
}
Kiedy „skompilowany” i uruchom program „podwójne wyświetlacze tablicę” dlaczego tablice poprzedzać obiekt? Czy istnieje jakakolwiek sytuacja konstruktora, w której wystąpi takie mylące zachowanie?
Dlaczego blisko głos? Jest całkiem jasne, o co on/ona pyta: –
możliwy duplikat [Które przeciążenie zostanie wybrane dla null w Javie?] (Http://stackoverflow.com/questions/1545501/which-overload-will-get-selected-for- null-in-java) i [W jaki sposób Java wybiera, którego konstruktora użyć?] (http://stackoverflow.com/questions/12057333/how-does-java-choose-which-constructor-to-use) - Uwaga drugi to * dokładnie * ten sam kod (zadanie domowe?) –