1、java异常是什么
java在执行期间产生了某些问题,导致执行中断,这一问题就称为异常。不同的原因都可能产生异常,包括以下内容:
==用户输入无效数据。
==需要打开的文件不存在。
==网络连接已丢失。
==JVM已经耗尽内存。
==将null当作某种对象进行操作。
2、异常都分为哪些
要了解在Java中如何异常处理工作,需要了解三类异常:检查异常(checked exception)
检查异常通常是用户错误,程序员并不可预见的问题。例如,如果一个文件被打开,但该文件无法找到,则会出现异常。这些异常并不能在编译时被发现。
运行时异常(runtime exception也叫unchecked exception)
运行时异常时本来可以由程序避免的异常。而不是已检查异常,运行时异常是在编译时被忽略。这里的运行时异常并不是我们所说的运行期间产生的异常,只是Java中用运行时异常这个术语来表示而已。另外,所有Exception异常都是在运行期间产生的。
错误(error)
无法处理的异常,比如OutOfMemoryError,一般发生这种异常,JVM会选择终止程序。因此我们编写程序时不需要关心这类异常。
要想自定义异常看这里:如何自定义异常
3、异常层次结构是怎样的
在Java中,所有异常类的父类是Throwable类,Error类是error类型异常的父类,Exception类是exception类型异常的父类,RuntimeException类是所有运行时异常的父类,RuntimeException以外的并且继承Exception的类是非运行时异常。
常见的RuntimeException包括NullPointerException、IndexOutOfBoundsException、IllegalArgumentException等。
常见的非RuntimeException包括IOException、SQLException等。
4、异常提供哪些方法
以下是Throwable类中比较重要的方法。1 public String getMessage()
返回有关已发生异常的详细消息。此消息在Throwable的构造函数中被初始化。
2 public Throwable getCause()
返回异常由一个Throwable对象所表示的错误原因。
3 public String toString()
返回getMessage()结果的名称。
4 public void printStackTrace()
打印toString()结果以及堆栈跟踪信息到System.err,输出错误流。
5 public StackTraceElement [] getStackTrace()
返回堆栈跟踪信息的数组。索引为0的元素表示堆栈的顶部,最后一个元素表示堆栈的底部。
转载地址:http://blog.csdn.net/ooppookid/article/details/51078948