Почему varargs получает больше предпочтений, чем Object для нулевого значения? [дубликат]JAVA

Программисты JAVA общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Почему varargs получает больше предпочтений, чем Object для нулевого значения? [дубликат]

Сообщение Anonymous »

Вот, например, два фрагмента кода

Код: Выделить всё

class HelloWorld {
public void method(Object a){
System.out.println("object");
}

public void method(int... a){
System.out.println("varargs");
}

public static void main(String[] args) {
HelloWorld h = new HelloWorld();
h.method(10);
}
}
Вывод — объект

Код: Выделить всё

class HelloWorld {
public void method(Object a){
System.out.println("object");
}

public void method(int... a){
System.out.println("varargs");
}

public static void main(String[] args) {
HelloWorld h = new HelloWorld();
h.method(null);
}
}
Вывод — varargs
Для первого кода вызывается метод с аргументом Object, поскольку он может обрабатывать значение int и имеет больше предпочтений, чем varargs .Однако, когда я вызываю метод с нулевым значением, даже если объект может обрабатывать нулевое значение и имеет больше предпочтений, чем varargs, вызывается метод varargs.
Почему?

Подробнее здесь: https://stackoverflow.com/questions/785 ... null-value
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «JAVA»