首页 > 代码库 > Java当中的异常

Java当中的异常

异常:中断了正常指令流的事件,是JVM虚拟机产生的对象

异常是程序运行时产生的,和编译无关

class Test{      public static void main(String args[]){           System.out.println(111111);           int i = 1 / 0;           System.out.println(222222);      }}

以上为算术异常(属于RuntimeExcepiotn的子类)信息,当出现异常后,将不再执行异常后面的语句。

异常的分类:由JDK提供的类

所有的异常类都是Throwable的子类。Throwable两个直接子类为Exception和Error。Error指JVM产生的错误,一旦产生错误,JVM则会关闭,程序也就不复存在了,程序员对Error无能为力。Exception也可以分为uncheckException和checkException。uncheckException包括了RuntimeExcepiotn和RuntimeExcepiotn的子类。Exception的直接子类中除了RuntimeExcepiton外都属于checkException

uncheckException和checkException的区别:

当程序有可能出现checkException时,编译器会强制要求你对可能会出现异常的代码进行处理、捕捉。

使用try…catch…finally捕捉处理异常

class Test{	public static void main(String args[]){		System.out.println(111111);		try{			System.out.println(222222);			int i = 1 / 0;			System.out.println(333333);		}		catch(Exception e){				e.printStackTrace();			System.out.println(444444);						}		finally{			System.out.println(555555);					}		System.out.println(666666);	}}

当程序运行出现异常则调到catch中去执行,如果没有异常就不执行catch中的代码,而finally中的代码不论是否有异常都会执行。

Java当中的异常