Как работает нуль в этом коде, почему он не печатает объект?Как работает нуль в этом коде?
class Test1{
public void doStuff(Object o){
System.out.println("In Object");
}
public void doStuff(String o){
System.out.println("In String");
}
}
public class TTest {
public static void main(String args[]){
Test1 t = new Test1();
t.doStuff(null);
}
}
Выход:
В Строка
ну, вы не печатаете объект, который вы отправляете в методу. Вы печатаете одну и ту же строку каждый раз, когда вызывается toStuff. Если вы измените код в doStuff на System.out.println (o); вы напечатаете строковый объект, который будет null и выкинет nullpointerexception. –
Когда doStuff вызывается, потому что doStuff перегружен, JVM ищет метод, принимающий более конкретные параметры. В этом случае это doStuff (String o), но вы не печатаете его. – IndoKnight