public class HelloWorld{
public static void main(String []args){
new SampleString().add(null);
}
}
class SampleString{
public void add(Object s){
System.out.println("Inside Object method");
}
public void add(String s){
System.out.println("Inside string method");
}
}
Почему программа печатает «Метод внутри строки», а не «Метод внутри объекта»? Не могли бы вы объяснить мне логику этого?Перегрузка java-метода одним аргументом
Я подозреваю, что лучший раздел для цитаты - это на самом деле 15.12.2.5 –
@JonSkeet Спасибо за исправление. Я искал этот. – manouti
Спасибо @Neil Locketz manouti. Если у меня есть два класса, предположим, что A и B, которые оба расширяют C. И тогда я передаю add (A a) и добавлю (B b), а затем в основной метод вызывают add (null). Какой из них должен быть напечатан? – Sourav