目录
什么是异常
异常就是程序中出现了一些错误,但并不是所有的错误都是异常,并且错误有时候是可以避免
比如:
1、用户输入了非法数据
2、要打开的文件不存在
3、网络通信中断或者jvm内存溢出
这些异常都是用户错误引起的,有时候是程序错误引起的、还有其它一些是因为物理错误引起的
理解Java异常处理是如何工作
检查性异常:最代表的检查性异常是用户错误或者问题引起的异常,无法预见的,例如要打开一个不存在的文件时,一个异常就发生了,这些异常在编译时不能被简单地忽略
运行时异常:运行时异常是可能被我们避免的异常。与检查异常相反,运行时异常可以在编译时忽略
错误:错误不是异常,而是脱离了我们控制的问题,错误在代码中通常被忽略,例如当一个栈溢出,一个错误就发生了,它们在编译也检查不到
捕获异常
使用try和catch关键字可以捕获异常,语法如下
try
{
// 程序代码
}catch(ExceptionName e1)
{
//Catch 块
}
实例
例子中声明了两个元素的数组,当代码试图访问超出第3个元素时,就会抛出一个异常
try{
int a[] = new int[2];
System.out.println("访问元素:" + a[3]);
}catch(ArrayIndexOutOfBoundsException e){
System.out.println("引发异常的是 :" + e);
}
System.out.println("走出异常块");
}
结果
引发异常的是 :java.lang.ArrayIndexOutOfBoundsException: 4
走出异常块