异常/Exception类型原理

java异常的层次结构图:

 throwable分为Error、Exception

·Error 

   ·JVM内部问题,比如资源不足等,无法恢复

  ·处理方式:不用处理

·Exception

  ·JVM通过处理可回到正常执行流程,即:可修复

  ·分为unchecked Exception(非受检异常)、checked Exception(受检异常)

  注:RuntimeException(非受检异常):处理或者不处理都可以(不需要try。。catch进行异常处理)

    其他Exception异常需要进行(try。。。catch异常处理)

为什么要对其他的Exception进行异常区分呢?

java针对可预见可恢复的情况进行妥善处理,同时确保程序在出现严重错误可预见的情况提供更多的错误信息,而不必将错误处理代码散布在各个代码片段,提高了代码的健壮性和可维护性

CheckException(受检查异常):

  1、强制处理:java编译器强制要求程序员在编写代码时显示处理这类异常,即必须使用try-catch捕获该异常,或在方法名上声明该方法可能会抛出异常,通过throw关键字

Unchecked Exception(运行时异常/非受检查异常):

  1. 不强制处理:编译器不会强制程序员为这类异常编写处理代码。也就是说,即使代码里可能出现运行时异常,编译仍然能通过

Static关键字

static还没消化。。。明天再总结

 

posted on 2024-02-20 17:10  园来个园  阅读(3)  评论(0编辑  收藏  举报