Я видел вопросы о переполнении стека о перегрузке метода для нулевого аргумента, но не решил мою путаницу, и я попробовал что-то другое, что не обсуждалось в ответах, поэтому задаю этот вопрос.
Мне нужна причина, когда я передаю "null", он выполняет функцию с типом аргумента double, а когда я передаю "0" или любую другую цифровую цифру, такую как 1,2,10 и т. Д., В функцию, которую он выполняетфункция с типом аргумента "Объект".Я знаю, что есть разница в NULL и 0 здесь разница.
Спасибо!
Код:
public class NullArgumentOverloading {
public static void main(String[] args) {
NullArgumentOverloading obj = new NullArgumentOverloading();
obj.overLoad(null); // prints "Double array argument method."
obj.overLoad(0); // prints "Object o argument method."
}
private void overLoad(Object o) {
System.out.println("Object o argument method.");
}
private void overLoad(double[] dArray) {
System.out.println("Double array argument method.");
}
}