java异常一张图带你了解

异常

  异常是java对程序中可能发生的错误事件的抽象。在现实生活中,也可能出现很多异常情况,例如抢劫,丢失东西等,而这些事件可以分为民事案件和刑事案件。在java中同样也定义了两种异常,一个是error和Exception。在显示生活中刑事案件是不能私下处理的,要交给司法机关处理,而民事案件可以私下调解处理。java中的error就如刑事案件,程序员不能通过编写程序进行处理,但是Exception可以通过程序员编写程序进行处理。由此我们可以很好的理解异常的种类。
  java中的异常是一个个类,这些类是各个异常的抽象,当发生异常时,jvm会创建该异常对象。用户可以通过异常对象查看异常信息。下图为异常体系图:
java异常一张图带你了解
编译时异常和运行时异常:
编译时异常:受检异常,就是在程序编译阶段jvm就会检查程序是否对该异常进行了处理,如果未处理,则编译不能通过。编译时异常通常定义的是发生几率较高并具有预见性的异常,程序员进行事先处理。
运行时异常:非受检异常,程序员在编写程序的时候不需要对该异常进行编程处理。编译期不进行检查。通常定义发生几率较低的异常。