阿瑟Java (10):Error 和 Exception 的区别是什么?

Error是程序无法处理的严重问题,如虚拟机错误,而Exception是可捕获并可能恢复的异常。编译时异常如IOException需要强制捕获,运行时异常如RuntimeException则不一定。程序员应尽可能处理Exception以保持程序运行。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Error 和 Exception 的区别

  • Error 和 Exception 都继承 Throwable

  • Error(错误)是程序无法处理的错误,错误时,程序会停止运行

    • 一般是指与虚拟机相关的问题,如系统崩溃,虚拟机错误,内存空间不足,方法调用栈溢等。

  • Exception(异常)是程序运行时,需要处理的异常,可以捕获 ,且可能被恢复

    • 遇到这类异常,应该尽可能处理异常,使程序恢复运行,而不应该随意终止异常。

    • 异常又分为编译时异常、运行时异常

    • IOException:受检异常,是编译时异常,必须主动捕获,可对异常进行处理,若不处理异常,程序将会结束运行

      • try/catch 显示的捕获

      • throw 将异常抛出去

    • RuntimeException:非受检异常,运行时异常,不需要捕获。

      • 通常没有具体的处理方式,程序将会结束运行。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值