Java 每日一题:Exception 和 Error 有什么区别❓

在Java中,Exception 和 Error 都继承自 Throwable 类,但它们被用于不同的场景和目的🔊:

Exception❌

概念📑:
Exception 代表那些在程序运行时可能出现的情况,而且这些情况通常可以被程序本身处理。它们通常是由程序的错误或不可预见的情况导致的,通常这些情况不会导致程序出现崩溃现象。

类型🌈:

Checked Exception(检查型异常)🎐
这类异常必须在编译时被捕获(try-catch)或声明抛出(throws)。它们通常反映了可恢复的情况,使用者可以通过适当的代码处理这些异常。例如🌰:IOException 和 SQLException

Unchecked Exceptions(非检查型异常)🎐
这类异常包括运行时异常(RuntimeException及其子类)。它们不需要显式地被捕获或声明抛出。例如🌰:我们常在程序中自定义的BusinessException(自定义异常)、NullPointerException(空指针)、 ArrayIndexOutOfBoundsException(数组越界),通常是我们的逻辑错误或者是我们手动抛出的异常,应用程序可以并且应该设计来捕获和处理异常,以保持程序的稳定性和用户体验。

Error💥

概念📑:Error代表那些通常不由程序来处理的严重问题,比如系统崩溃、虚拟机错误或动态链接失败等。这些错误通常发生在Java运行时系统内部,与应用程序代码的错误相比,它们更严重,往往没有恢复的可能。

常见例子🌰:
OutOfMemoryError(内存不足)、StackOverflowError(栈溢出)、NoClassDefFoundError(找不到类定义)等。

总的来说,开发者应该捕获并处理异常,以防止程序意外终止,提高程序的健壮性。对于错误,通常最好让程序终止,因为继续运行可能会导致更严重的问题。

  • 3
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值