1、什么叫做异常处理?
是JAVA语言,为了保证JAVA运行的健壮性的一种机制。它的父类是throwable,它下面有error和Exception两个子类,那么它们有什么区别呢?error一般是指无法挽救的错误。而Exception指的是程序本身可以捕获并且可以处理的异常。而Exception可分为编译时异常和运行时异常。
2、异常处理的工作原理?
一旦程序发生异常,JAVA虚拟机会创建一个此类异常的实例。异常实例当中包含了此类异常的所有信息。我们做为程序员应该把这些信息记录下来,供维护者使用。也应该给使用者一个通俗的提示。
3、JAVA是怎样异常能够正常处理?
有五大关键字:try、catch、finally、throw、throws,以及在API里有N多个处理异常的Class,try是包裹有可能发生异常的代码,一旦try发生了异常,马上进入catch,所以同一时刻只能进入到一个catch,就像是我们的switch,只能进入一个case。try里面有异常进入到某一个catch,就是我们常说的捕获。我们要拿到异常发生的信息,如果要抛,要转换异常的类型。不管catch是否执行,我们finally都会执行。那么怎样让它不执行finally呢?只要在catch里写一个System.exit(0);throw这个关键字表示方法内部立即抛出异常,它只能抛一个,throws写在方法的声明之处,可以抛出n个,用逗号隔开。
4、异常处理的原则是什么?
底层发生的异常不能压制,必须要向上抛出,直到客户端,所 以,底层的异常要么直接抛出,要么先捕获再转换异常类型后再抛出
5、那么异常处理在方法重写中的运用呢
原则 :子类的重写方法不允许抛出比父类方法更大的异常,可以小于,也可以平级,子类只能设计出比父类更优秀,更健壮的类来。
6、什么情况下只有捕获没有抛出
我们写一个静态代码块的时候的异常,只能捕获,没有抛出。
7、异常信息怎么处理
可以把报错信息存在log4j里。