/*
我们自己如何处理异常呢?
A:try…catch…finally
B:throws 抛出
try…catch…finally的处理格式:
try{
可能出现问题的代码
}catch(异常名 变量){
针对问题的处理
}finally{
释放资源;
}
变形格式:
try{
可能出现问题的代码
}catch(异常名 变量){
针对问题的处理
}
注意:
1:try里面的问题越少越好
2:catch里面必须有内容,哪怕是给出一个简单的提示,不然我们就只是把这个问题给隐藏了起来!
使用方法:
1:一个异常
2:两个异常
A:每一个写一个try...catch
B: 写一个try,多个catch
try{
...
}catch(异常类名1 变量名){
}catch(异常类名1 变量名){
}
.....
注意:一旦try里面出现了问题,就会把这里的问题给抛出去,然后和catch里面的问题进行匹配
一但有匹配成功的,就执行catch里面的处理,并结束try....catch,继续执行后面的语句
如果实在不知道是上面错误,就在catch后面挂(Exception e),这个是异常的父类,一定可以抛出异常。
*/
public class Test {
public static void main(String[] args) {
/*
当为一个异常的时候:
int a=10;
int b=0;
try {
System.out.println(a/b); //这里又被除数不能为0的异常,我们try了它。
}catch (ArithmeticException ae){
System.out.println("除数不能为0");
}
System.out.println("over");
最终输出为:
除数不能为0
over
*/
int a=10;
int b=0;
int[] arr={1,2,3};
try {
System.out.println(a / b);
System.out.println(arr[3]);
}catch (ArithmeticException e){
System.out.println("除数不能为0");
}catch (ArrayIndexOutOfBoundsException e){
System.out.println("你访问了不该访问的索引");
}
System.out.println("over");
}
}
运行结果为:
除数不能为0
over
本文介绍了Java中的异常处理机制,包括try-catch-finally语句的使用方式和注意事项。通过示例展示了如何处理ArithmeticException和ArrayIndexOutOfBoundsException,并强调了异常处理的重要性,以避免问题被隐藏。

被折叠的 条评论
为什么被折叠?



