(Exception)异常的分类
检查异常 运行时异常
运行时异常 顾名思义 就是运行的时候显示出来的异常
NullPointerException 空指针异常
下边的例子中数组是空的 没有长度
ArrayIndexOutOfBoundsException 越界异常
下边例子中数组长度只有3 但是查看的是第十个 就看不到
写代码的时候 不用特意对异常进行处理 在程序运行以后 系统自动检测 然后报出异常
检查异常
防患于未然的操作 在写代码的时候就要对代码的异常进行处理
在写代码的时候 系统就会检测到 使用快捷键 alt+enter可以选择处理方式
处理方式1 try-catch
try {Class.forName("whx.com.test01.test01")} catch (ClassNotFoundException e) {e.printStackTrace();}
处理方式2 多重catch子句
try {Class.forName("whx.com.test01.test01").newInstance()} catch (InstantiationException e) {e.printStackTrace();} catch (IllegalAccessException e) {e.printStackTrace();} catch (ClassNotFoundException e) {e.printStackTrace();}
处理方式3 throws抛出异常
throw和throws的区别
1.位置不同
throw在方法的内部
throws在方法的签名处 方法的声明处
2。内容不同
throw+异常对象(检查异常 运行时异常)
throws+异常的类型(可以有多个类型 用逗号拼接)
3.作用不同
throw 异常出现的源头 制造异常
throws 在方法的声明处 告诉方法的调用者 这个方法可能会出现声明的这些异常 然后调用者对这个异常进行处理 要么自己处理 要么再继续向外抛出异常