try 和 catch 关键字

try 和 catch 关键字

最近,在看ArrayList的原码时,在 clone() 的方法中发现了 trycatch 这两个我之前没见过的关键字。因为之前没有见到过,所以不清楚它们的作用,导致我看不懂原码的意思。于是我就上网找资料学习相关的知识。

经过查找资料,我得知,try / catch 语句用于处理代码中可能出现的错误信息。通常是程序员造成的编码错误或错别字,也可能是拼写错误或语言中缺少的功能(可能由于浏览器差异)。如果没有 try / catch 的话,就有可能出现异常导致程序崩溃,而 try / catch 则可以保证程序的正常运行。
例如:当除数为0时,编译不会报错,如果没有 try / catch 的话,程序直接崩溃。用 try / catch 的话,则可以让程序运行下去,并且输出为什么出错!

语法格式:
try {
    // 尝试执行的代码块
}
catch (异常类型1 异常类型的变量名1) {
    // 捕获错误的代码块1
}
catch (异常类型2 异常的变量名2) {
    // 捕获错误的代码块2
}
...
finally {
    // 最终执行的代码块
}

try 代码块中的语句出现错误时,就会进入 catch 语句开始执行。 catchfinally 语句都是可选的,但在使用 try 语句时必须至少使用一个。catch 可以有多个,当所有的 catch 都不满足时,再执行 finally 里的代码。

以上都是在百度和CSDN上找到的,我们知道,编程语言都是需要自己去动手操作的。因此我自己试着用了一下 try / catch 语句,代码如下

public class Test {
    public static void main(String[] args) {
        try {
            System.out.println("执行try语句");
            int a = 10;
            int b = 0;	// int b = 10;
            int c = a / b;
            System.out.println(c);
        }
        catch (ArithmeticException c) {	// ArithmeticException是不使用 try/catch 时报的错
            System.out.println("执行catch语句");
        }
        finally {
            System.out.println("执行finally语句");
        }
    }
}

运行结果如下

1650259598908.png

b改成 10 后,运行结果如下

1650259710987.png

可以看见,finally 语句都会被执行。因此我们可以得出结论,不论 try 语句中的代码块是否正确,最终都会执行 finally 语句。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值