当我运行下面的代码时,它给出输出“算术异常”。由于算术异常被检查为异常,所以它具有比未经检查的异常更高的优先级。 但它如何区分对象和算术异常?异常,算术异常和对象
public class Solution {
public static void a(Exception e)
{
System.out.println("Exception");
}
public static void a(ArithmeticException ae)
{
System.out.println("ArithmeticException");
}
public static void a(Object o)
{
System.out.println("Object");
}
public static void main(String[] args)
{
a(null);
}
}
下面的答案是正确的。你也应该注意到'ArithmeticException'不是一个检查的异常。 –
[方法重载和选择最具体类型]的可能重复(http://stackoverflow.com/questions/9361639/method-overloading-and-choosing-the-most-specific-type) –