java中的异常处理

it2026-04-21  2

1、错误处理超类:

    java.lang.Throwable

2、错误类型

Error

有虚拟机生成并抛出,例如栈溢出

Error通常是灾难性的致命错误,一旦出现这些错误,JVM一般会选择终止线程,影响很大;

Exception

   包括运行时异常(RuntimeException) 

  ArrayIndexOutOfBoundsException(数组下标越界)NullPointerException(空指针异常)ArithmeticException(算术异常)MissingResourceException(丢失资源)ClassNotFoundException(找不到类)

Exception通常是可以被程序控制和处理的

3、错误捕获关键字

try(错误监控区域)catch(捕获并按规则输出定义的异常)

          try…catch…的作用:如果代码进入到try的错误监控区域并产生catch定义的错误,则输出对应catch代码块的内容

finally  (无论是否有异常,总会执行finally代码块)

实例

public class Application { public static void main(String[] args) { int a = 1; int b = 0; try { System.out.println("我没错"); System.out.println(a/b); } catch (Error e){ System.out.println("error"); } catch (Exception e){ System.out.println("Exception"); } finally { System.out.println("finally"); } } }

ps:

①try下必须有catch,且可以有多个catch;可以没有finally

②catch(想要捕获的异常类型) 多个catch时,异常会按顺序匹配,进入到对应catch代码块中。因此异常类型若有包含关系时,应从小到大排序,例如:

try { System.out.println("我没错"); System.out.println(a/b); } catch (Error e){ System.out.println("error"); } catch (Exception e){ System.out.println("Exception"); } catch (Throwable e){ System.out.println("Throwable"); }

 

最新回复(0)