网站导航:首页 -> JAVA认证 -> JAVA认证考试指导 -> Java初级入门教程-五-

Java初级入门教程-五-

    异常处理

  所谓异常,就是指在程序中捕捉可能出错的代码段来进行处理,使程序避免运行错误,甚至崩溃的事情发生。当然你也可以用if或case之类的语句自己处理,不过在java中有某些编程,是必须用异常处理机制来解决的,不然编译会出现错误的。了解和学会使用异常处理是学习后面知识的基础哦~~老实说,异常处理并不难的,我们主要学习的是java异常类中几个基本异常,并不需要大家掌握自定义异常等,所以大家可以放心,绝对不会太难的~

  举几个简单的常见异常例子:当你处理除法运算时,除数为0就会出错异常;当然试图处理一个为null的对象,也会出现异常;当你定义一个大小为3的一维数组,试图试问它的第4个元素就会出现异常等等之类,这些全都需要事先预知处理的,否则程序可能会出错!像前面这几个分别是算术条件异常、空对象异常和数组下标越界异常,此外还有几个常见的异常。我这就把java中几个基本异常简单的描述一下:

异常

描述

arithmeticexception

当出现异常算术条件时产生

nullpointerexception

当应用程序企图使用需要的对象处为空时产生

arrayindexoutofboundsexception

数组下标越界时产生

arraystoreexception

当程序试图存储数组中错误的类型数据时产生

filenotfoundexception

试图访问的文件不存在时产生

ioexception

由于一般i/o故障而引起的,如读文件故障

numberformatexception

当把字符串转换为数值型数据失败时产生

outofmemoryexception

内存不足时产生

securityexception

当小应用程序(applet)试图执行由于浏览器的安全设置而不允许的动作时产生

stackoverflowexception

当系统的堆栈空间用完时产生

stringindexoutofboundsexception

当程序试图访问串中不存在的字符位置时产生


  上述表格中出现的异常基本上都是java中我们暂时可能遇到的异常了。接下来学习异常的使用方法了。


  在java中处理异常的关键字是:


·try 把可能引发异常的语句括在其中

·catch 捕获到try中语句异常后,通过1个或多个catch来解决相应的异常

·finally 不管异常是否发生都会执行finally中的语句

  可能大家还是不太明白上面三条异常处理关键字的含义,那我就打个比喻:假设在一个山洞里有未知的动物,不知道是什么,现在来了一个叫“catch”动作协会的专门人员进行探查,还有一个叫“finally”的科学家要等待消息。首先他们把一个叫“try”的捕获装置放入山洞中,再通过“try”中的诱饵把动物引诱出来,这个叫“try”的装置一旦捕获这个动物就会马上通知“catch”协会进行相应的处理。不管“try”是否捕获到动物,也不管“catch”是否进行处理,最后都必须要打电话通知“finally”的科学家。呵呵~异常处理大概也是这样子工作的了,不知道大家明白没有……没关系,下面我们看源代码,一个简单的异常处理程序,大家再好好体会一下,很容易理解的!