异常与捕获(Throwable)(受查错误,非受查错误)(抛出异常)

异常与捕获(Throwable)(受查错误,非受查错误)(抛出异常)

Throwable:

  1. Error: 内部错误,资源耗尽错误,只能终止程序;(非受查异常)
  2. Exception:受查异常(必须捕获或重新抛出),非受查异常(RuntimeException运行时异常)
  3. 运行时异常:ArithemticException
    NumberFormatException
    ArrayIndexOutOfBoundsException

异常处理格式:

try{
    有可能出现异常的语句 ;
}[catch (异常类 对象) {
} ... ]
[finally {
    异常的出口
}]

try…catch
try…finally
try…catch…finally

try{
    System.out.println("进行数学计算:"+10/value)}catch(ArithemticException e){//e  java虚拟机实例化的异常对象
    System.out.println("抛出异常")}

你现在根本不知道程序产生了什么样的异常。所以为了明确的取得异常信息,可以直接输出异常类对象,或者调用所有异常类中提供的 printStackTrace() 方法进行完整异常信息的输出。

有finally就必须执行finally;

try{
    System.out.println("进行数学计算:"+10/value)}catch(ArithemticException e){
    System.out.println("抛出异常")}finally{
     System.out.println("无论是否产生异常,finally块都会执行")}
throws关键字:

在进行方法定义的时候,如果要告诉调用者本方法可能产生哪些异常,就可以使用throws方法进行声明。

如果现在调用了throws声明的方法,那么在调用时必须明确的使用try…catch…进行捕获,因为该方法有可能产生异
常,所以必须按照异常的方式来进行处理。

用在方法中:

package test;
public class Test {
    public static void main(String[] args) {
          try {
                System.out.println(calculate(10, 0));
          } catch (Exception e) {
                 e.printStackTrace();
            }
    }
    public static int calculate(int x,int y) throws Exception {
           return x/y ;
    }
}
throw关键字:

thorw是直接编写在语句之中,表示人为进行异常的抛出。

使用throw产生异常类对象。

public static void main(String[] args){
      try {
            throw new Exception("抛个异常玩玩") ;
      } catch (Exception e) {
            e.printStackTrace();
        }
}

throw与throws区别:

  1. throw用于方法内部,主要表示手工异常抛出。
  2. throws主要在方法声明上使用,明确告诉用户本方法可能产生的异常,同时该方法可能不处理此异常。
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值