异常

运行的异常和一般异常的区别

异常分为两类:runtime exception(运行时异常)和checked exception(一般异常)。 一般的异常比如ioException,sqlException,编译器会强制我们写try catch。

而runtimeException是虚拟机掌管的。如果出现异常会一直往上抛,直到遇到处理代码。如果没有处理代码,到最上层。如果是多线程就通过Thread.run抛出,单线程由main抛出。抛出后线程就退出,主程序抛出那么程序退出。

 

 

error和exception的区别

error表示的是系统级的错误。是java运行环境中的内部错误或者硬件问题。内存资源不足等。对于这种错误,程序基本无能为力,除了退出运

行外别无选择,它是由Java虚拟机抛出的。

exception是程序级的错误,是因为应用程序有瑕疵导致。

 

几种常见的runtimeException

NullPointerException、ArrayIndexOutOfBoundsException、ClassCastException(子类引用指向父类对象)。StringIndexOutOfBoundsException WebServiceException,ArithmeticException(整数除0时发生)

 

 

 

throws,throw,try catch,finally分别指:

 

throw是抛出异常,在方法体里面写。直接指明抛出哪个异常。

 

throws是出现在方法头,表示是出现某种异常的可能性,也就是说如果出现这种异常就抛出。

 

try catch是自己处理异常

 

finally是无论是否有异常都会处理,除非在finally的前面有system.out.exit();这时候程序直接退出了。

 

 

 

posted @ 2017-02-09 16:37  TP000  阅读(146)  评论(0编辑  收藏  举报