我無法理解,爲什麼這個程序打印字符串方法overrding傳遞null對象
class AA {
void m1(Object o) {
System.out.println("Object ");
}
void m1(String o) {
System.out.println("String ");
}
}
public class StringOrObject {
public static void main(String[] args) {
AA a = new AA();
a.m1(null);
}
}
請幫助我理解它是如何工作的打印斯汀,而不是對象
因爲它會嘗試調用最具體的方法,在這種情況下是String。 –
我確定這有一個重複,但我找不到它。 – dasblinkenlight
我想知道如果像「void m1(Integer o)」這樣的方法會被聲明爲除了這兩個方法之外會有什麼結果呢?編譯時錯誤? –