Java中关于try,catch,finally以及异常的概要分析

  • A+
所属分类:Java入门

Java中关于try,catch,finally以及异常的概要分析 Java中关于try,catch,finally以及异常的概要分析

  1. try、catch、finally语句中,在如果try语句有return语句,则返回的之后当前try中变量此时对应的值,此后对变量做任何的修改,都不影响try中return的返回值
  2. 如果finally块中有return 语句,则返回try或catch中的返回语句忽略。
  3. 如果finally块中抛出异常,则整个try、catch、finally块中抛出异常

所以使用try、catch、finally语句块中需要注意的是

  1. 尽量在try或者catch中使用return语句。通过finally块中达到对try或者catch返回值修改是不可行的。
  2. finally块中避免使用return语句,因为finally块中如果使用return语句,会显示的消化掉try、catch块中的异常信息,屏蔽了错误的发生
  3. finally块中避免再次抛出异常,否则整个包含try语句块的方法回抛出异常,并且会消化掉try、catch块中的异常

例子请看:https://www.cnblogs.com/aigongsi/archive/2012/04/19/2457735.html

 

Java常见异常

在Java中提供了一些异常用来描述经常发生的错误,对于这些异常,有的需要程序员进行捕获处理或声明抛出,有的是由Java虚拟机自动进行捕获处理。Java中常见的异常类:

runtimeException子类:

  1. java.lang.ArrayIndexOutOfBoundsException 数组索引越界异常。当对数组的索引值为负数或大于等于数组大小时抛出。
  2. java.lang.ArithmeticException 算术条件异常。譬如:整数除零等。
  3. java.lang.NullPointerException 空指针异常。当应用试图在要求使用对象的地方使用了null时,抛出该异常。譬如:调用null对象的实例方法、访问null对象的属性、计算null对象的长度、使用throw语句抛出null等等
  4. java.lang.ClassNotFoundException 找不到类异常。当应用试图根据字符串形式的类名构造类,而在遍历CLASSPAH之后找不到对应名称的class文件时,抛出该异常。
  5. java.lang.NegativeArraySizeException 数组长度为负异常
  6. java.lang.ArrayStoreException 数组中包含不兼容的值抛出的异常
  7. java.lang.SecurityException 安全性异常
  8. java.lang.IllegalArgumentException 非法参数异常

IOException

  1. IOException:操作输入流和输出流时可能出现的异常。
  2. EOFException 文件已结束异常
  3. FileNotFoundException 文件未找到异常

其他

  1. ClassCastException 类型转换异常类
  2. ArrayStoreException 数组中包含不兼容的值抛出的异常
  3. SQLException 操作数据库异常类
  4. NoSuchFieldException 字段未找到异常
  5. NoSuchMethodException 方法未找到抛出的异常
  6. NumberFormatException 字符串转换为数字抛出的异常
  7. StringIndexOutOfBoundsException 字符串索引超出范围抛出的异常
  8. IllegalAccessException 不允许访问某类异常
  9. InstantiationException 当应用程序试图使用Class类中的newInstance()方法创建一个类的实例,而指定的类对象无法被实例化时,抛出该异常

http://blog.csdn.net/hguisu/article/details/6155636

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: