java异常总结

空扰寡人 提交于 2020-02-01 16:39:40

java异常总结

1.异常相关概念及注意事项:

  1. *异常:*就是在程序运行过程中所发生的意外事件,他中断指令的正常执行。
  2. *error:*错误error类指的是系统错误或运行环境出现的错误,这些错误一般都很严重,即使捕捉到也很难处理。
  3. *Exception:*异常Exception类则 指一些可以被捕获并且可能恢复的异常。
  4. *抛出异常:*在java程序中执行的过程中,如果出现了异常事件,就会生成一个异常对象。 生成的异常对象将传递给JAVA运行时系统,这一异常的产生和提交过程称为抛出(throw)异常。
  5. Exception是try代码块传递给catch块的变量类型,e是变量名。catch代码块中语句"e.getMessage();"用于输出错误异常。通常,异常处理常用以下三个函数来获取相关信息:①getMessage()函数:输出错误性质②toString()函数:输出异常的类型和性质③printStackTrace()函数:指出异常的类型、性质、栈层次及出现在程序中的位置
  6. try_catch_finally中,catch必有,finally最多只有一个,也可以没有,finally总是最后执行。
  7. java的异常处理机制带来java程序代码结构上的改变:① 不能滥用异常机制,简单的出错建议使用if语句;②不能过分细分异常。

2.在java中提供了一些异常类来描述经常发生的错误。其中,有的需要程序员进行捕获处理或声明抛出,有的是有java虚拟机自动进行捕获处理的。java中常见的异常如下所示:
-

  1. ClassCastException(类型转换异常)
  2. ClassNotFoundException(未找到相应类异常)
  3. ArithmeticException(算术异常)
  4. ArrayIndexOutOfBoundsException(数组下标越界异常)
  5. ArrayStoreException(数组中包含不兼容的值抛出的异常)
  6. SQLException(操作数据库异常类)
  7. NullPointerException(空指针异常)
  8. NoSuchFiledException(字段未找到异常)
  9. NoSuchMethodException(方法未找到异常)
  10. NumberFormatException(字符串转换为数字抛出的异常)
  11. NegativeArraySizeException(数组元素个数为负数抛出的异常)
  12. StringIndexOutOfBoundsException(字符串索引超出范围抛出的异常)
  13. IOException(输入输出异常)
  14. IllegalAccessException(不允许访问某类异常)
  15. InstantiationException(当应用程序试图将Class类中的newInstance()方法创建一个类的实例,而指定的类对象无法被实例化时,抛出该异常)
  16. EOFException(文件已结束异常)
  17. FileNotFoundException(文件未找到异常)

3.在方法中抛出异常
在某个方法中可能会发生异常,但不想在当前方法中处理这个异常,则可以使用throws、throw关键字在方法中抛出异常

  1. throws关键字通常被应用在声明方法时,用来指定方法中可能抛出的异常。多个异常可以使用逗号分隔。
  2. 使用throws关键字将异常抛给上一级后,如果不想处理该异常,可以继续向上抛出,直到处理该异常为止。
  3. 如果是Error、RuntimeException或者他们的子类,可以不适用throws关键字来声明异常编译也可以通过,但是运行时会被系统抛出。
  4. throw关键字通常用于方法体中,并且抛出一个异常对象。程序在执行到throw语句是立即终止,他后面的语句都不执行。通过throw抛出异常后,如果想在上一级代码中捕捉异常,则需要在pc异常的方法中只用throws关键字在方法的声明中指明要抛出的异常,否则继续返回上一级,知道解决为止。
标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!