我是靠谱客的博主 平常时光,这篇文章主要介绍异常2-异常处理机制,现在分享给大家,希望可以做个参考。

异常处理机制

  • 抛出异常
  • 捕获异常

异常处理的五个关键词:

try、catch、finally、throw、throws

实例:int a = 1;int b = 0;

System.out.println(a/b);

异常:Exception in thread “main” java.lang.ArithmeticException: / by zero

package com.exception;
public class Test {
public static void main(String[] args) {
int a=1;
int b=0;
try{//监控区域
System.out.println(a/b);
}catch(ArithmeticException e){//捕获异常
System.out.println("程序出现异常,变量b不能为0");
}finally{//处理善后工作
System.out.println("finally");
}
//finally可以不要,假设IO流、资源,关闭
}
}
输出:
程序出现异常,变量b不能为0
finally
package com.exception;
public class Test {
public static void main(String[] args) {
int a=1;
int b=0;
try{//监控区域
new Test().a();
}catch(Error e){//catch(想要捕获的异常类型!) Throwable最高级
捕获异常
System.out.println("Error");
}catch(Exception e){//可以捕获多个异常,但是从上至下,范围从小到大
}catch(Throwable e){
} finally{//处理善后工作
System.out.println("finally");
}
//finally可以不要,假设IO流、资源,关闭
}
public void a(){b();}
public void b(){a();}
}
输出:
Error
finally
//快捷键:选中语句 ctrl+alt+t
try {
System.out.println(a/b);
} catch (Exception e) {
e.printStackTrace();//打印错误的栈信息
} finally {
}
package com.exception;
public class Test {
public static void main(String[] args) {
int a=1;
int b=0;
try {
new Test().test(a,b);
} catch (ArithmeticException e) {
e.printStackTrace();
} finally {
}
}
//假设在这个方法中处理不了这个异常。方法上抛出异常
public void test(int a, int b) throws ArithmeticException{
if(b==0){
//throw throws
throw new ArithmeticException();//主动抛出异常,一般在方法中使用
}
}
}

最后

以上就是平常时光最近收集整理的关于异常2-异常处理机制的全部内容,更多相关异常2-异常处理机制内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(125)

评论列表共有 0 条评论

立即
投稿
返回
顶部