快速业务通道

Java程序设计基础之异常处理 - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-24

throws语句用来标明一个成员函数可能抛出的各种“异常”。对大多数Exception子类来说,Java编译器会强迫你声明在一个成员函数中抛出的“异常”的类型。如果“异常”的类型是Error或RuntimeException,或它们的子类,这个规则不起作用。如果你想明确地抛出一个RuntimeException,你必须用throws语句来声明它的类型。

提示:当然,你可能对上面的说明不是很明白,不过不要紧,编译运行下面的Java程序(已经为你做了详细的注释)你会理解很多!

现在我们用下面的例程来说明问题:

class ThrowsDemo  //类名,相应的java源文件应该保存成:ThrowsDemo.java static void procedure   throws Illegal AccessException //throws语句 //抛出IllegalAccessException类型的异常 System.out.println″inside procedure″  //输出文本信息,以说明是在执行proced ure方法时抛出了异常 throw new IllegalAccessException″de mo″  //新生成一个Throwable类实例,然后抛出异常 public static void mainString args  //main 方法开始,程序从此处执行  try  //try语句块开始 procedure   //调用procedure方法,该方法将Throw(抛出)异常信息 catch IllegalAccessException e  //处理IllegalAccessException类型的异常,catch语句块 System.out.println″caught ″ + e 

编程并执行程序,其过程如下:

E\javacode\exception>java ThrowsDe mo inside procedure caught java.lang.IllegalAccessExceptio n demo

提示:如上面的代码所示,我们用了一个完整的程序来说明在Java程序中如何使用try…catch…throw等语句。Try…里产生的异常被捕获了下来,然后在catch块里进行处理(这里只是输出异常信息)。throws IllegalAccessException标明程序将抛出一个IllegalAccessException类型的异常。IllegalAccessException e生成一个异常对象,然后用System.out.println输出异常信息。

Java程序设计基础之异常处理(3)

时间:2010-07-08

finally语句

有时为了确保一段代码不管发生什么异常都要被执行,可以使用关键词finally来标出这样一段代码。一个成员函数返回到调用它的成员函数,或者通过一个没捕捉到的异常,或者通过一个明确的return语句,finally子句总是恰好在成员函数返回前执行。

下面我们以一个比较完整的异常处理程序来说明上面所述的各种异常处理语句的使用问题:

class ExceptionDemo  //异常使用示例,保存为ExceptionDemo.java static void procA try System.out.println″inside procA″ throw new RuntimeException″demo″ //抛出异常 finally System.out.println″procA''s finally″ //注意:不管发生什么等会执行!! static void procB  try System.out.println″inside procB″ return //返回,实际上是在finally语句执行完后才返回 finally System.out.println″procB''s finally″ public static void mainString args  try procA catchException e System.out.println″catch″+e procB

提示:在上面的完整程序中,finally后的大括号内的代码是任何情况下都会执行的。另外,在procB中,return语句并没有立即返回,这一点应该特别注意。你可以亲自动手,执行上面的程序试试(编译和执行类似于上例)。

到目前为止,关于Java的流程控制已经完全讲完了。要真正理解并掌握它们只有经过大量的练习。而好的方法就是修改上面的每一个程序,让它们实现你想要的功能,并

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号