Throwable的成员方法 比如我现在有了Exception e
例如 ArrayIndexOutOfBoundsException e
这个e对象执行的方法可以有哪些:
1.e.getMessage(); //返回这个throwable的详细消息字符串
2.e.toString //返回此可抛出的简短描述
3.e.printstackTrace();//把异常的信息输出在控制台
抛出处理:
throws写在方法处 表示声明一个异常 告诉调用者 使用本方法有哪些异常
throw new NullPointerException
int[] arr = {1, 2, 3, 4, 5};
try {
System.out.println(arr[10]);
} catch (ArrayIndexOutOfBoundsException e) {
System.out.println(e.getMessage());
e.toString();
e.printStackTrace();
//e.printStackTrace这个方法是e.toString和e.getMessage的总和
}
/*
抛出处理:
throws写在方法处 表示声明一个异常 告诉调用者 使用本方法有哪些异常
throw new NullPointerException
*/
int[] arr2 = {1, 2, 3, 4, 5};
int max = 0;
try {
max = getMax(arr2);
} catch (NullPointerException e) {
System.out.println("空指针异常");
} catch (ArrayIndexOutOfBoundsException e) {
System.out.println("索引越界异常");
}
System.out.println(max);
}
public static int getMax(int[] arr2){
if(arr2==null){
throw new NullPointerException();
}
if(arr2.length==0){
throw new ArrayIndexOutOfBoundsException();
}
System.out.println("看看我执行了么");
int max = arr2[0];
for(int i = 1;i<arr2.length;i++){
if(arr2[i]>max){
max = arr2[i];
}
}
return max;
}