親愛的朋友我是java中的異常處理初學者。我從一個教程中得到了這個示例,我運行這個代碼打印出的Arithmetic異常。如果我刪除那個參數爲ArithmeticException的方法,那麼稱爲第一個方法是print Exception。 請任何人都可以解釋這段代碼發生了什麼。在java中有參數「異常處理類對象」的方法
public class Question1 {
public static void javaHungry(Exception e) {
System.out.println("Exception");
}
public static void javaHungry(ArithmeticException ae) {
System.out.println("ArithmeticException");
}
public static void javaHungry(Object obj) {
System.out.println("Object");
}
/**
* @param args
*/
public static void main(String[] args) {
javaHungry(null);
}
}
使用'null'調用方法需要調用最具體的方法。在你的情況下,它首先是'ArithmeticException',因爲它是最具體的。 ''異常'是更具體的對象,因此如果你刪除'javaHungry(ArithmeticException ae)'方法 – SomeJavaGuy