启动参数与异常一例
public class Args1Test {public static void main(String[] args) {try {args = null;args[0] = "test";} catch (Exception ex) {System.out.println("Exception");} catch (NullPointerException npe) {System.out.println("NullPointerException");}}}?备选答案:
A:testB:ExceptionC.Compilation fails.D.NullPointerException首先我们可以知道catch是是一个异常链,只要有一个处理,后续的catch都不再执行,并且还有一个条件,也就是多个catch时父类应该在子类异常的后面(也就是特定异常在前,通用异常在后,反过来则报C,所以此题选择c。这个题目还有一个陷阱,因为args是一个数组,但是它是不可以改变,是一个只读数组,因为在没有第二个catch子句的情况下选择B