异常Exception和异常日志笔记

Java的异常处理是通过5个关键字来实现的:

trycatchfinallythrowthrows


*异常分为Checked异常和运行时异常

Checked异常必须捕获或者声明抛出

*try-catch-finally中存在return语句的执行顺序

*finally块中语句不执行的情况(System.exit(1)


常见的异常类型

Exception     异常层次结构的根类

ArithmeticException 算术错误情形,如以零作除数

ArrayIndexOutOfBoundsException数组下标越界

NullPointerException 尝试访问null对象成员

ClassNotFoundException 不能加载所需的类

InputMismatchException 欲得到的数据类型与实际输入的类型不匹配

IllegalArgumentException 方法接受到非法参数

ClassCastException 对象强制类型转换出错

NumberFormatException 数字格式转换异常,如把“ABC”转换成数字



一、异常机制

格式1

try{

可能发生异常的语句}catch(Exception){

捕获异常

}finally{

无论是否有异常,都进入执行}


获得异常的信息:

e.getMessage();

获得异常的内存堆栈信息及错误位置:

e.printStackTrace();




throw和throws的区别:

throws:在方法里去抛出异常,可以抛出多个异常去给虚拟机或调用者去处理

throw :每次只能抛出1个异常,使用try-catch去处理,或者抛给别人

  具体区别表现在以下几个方面:

1.作用不同:throw用于在程序中抛出异常;throws用于声明在该方法内抛出了异常

2.使用位置不同:throw位于方法体内部,可以作为单独语句使用;throws必须跟在方法参数列表的后面,不能单独使用

3.内容不同:throw抛出一个异常对象,而且只能是一个;throws后面跟异常类,而且可以跟多个异常类。


你可能感兴趣的:(异常Exception和异常日志笔记)