网站大量收购闲置独家精品文档,联系QQ:2885784924

Java编程异常处理教学讲义.ppt

  1. 1、本文档共84页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Java编程异常处理教学讲义.ppt

第六章 异常 1.异常的概念 2.异常处理的方法 3.java的异常类 4.异常处理 5.自定义异常的实现 6.断言 ;2.异常处理的方法 当异常发生时,有两种处理方式:a. 捕获 b. 异常抛出 a. 捕获.try-catch 当异常发生时,通过异常的捕获可以来对发生的异常进行处理. try-catch方法: try{ 可能出现异常的代码 }catch(异常类型1 异常引用){ 异常类型1的处理代码 } ...... catch(异常类型n 异常引用){ 异常类型n的处理代码 } ; 注:1.try语句只能有一个,而catch语句块则可以有任意多个.catch语句块紧跟在try语句块之后,而且catch语句块必须相互紧跟,它们之间不能有任何代码. 2.当在try语句块中发生异常时,程序将停止继续往下执行.系统会把它封装成一个异常类对象,并把它交给catch语句块(进入语句块)相对应的异常类型的异常引用进行处理.如果没有异常发生,程序正常运行不会进入任何一个catch语句块. b. 异常抛出. 不是所有异常在其产生的位置都能立即进行处理(没有捕获到或处理不了) 异常抛出分为:显性再抛出和隐性再抛出 将catch语句捕获的异常再次抛出,称为显性再抛出.如果只想把收到的异常再抛出,不必使用显性再抛出,使用隐性再抛出,只要在方法后用throws语句,方法内不用处理任何异常. ;两者异同: 1.) 若抛出的是捕获异常,隐性与显性再抛出都必须在方法声明中明确声明. 2.) 显性再抛出是在方法体中使用throw语句将产生的异常抛出. 3.) 隐性再抛出是在方法体中没有任何抛出异常的语句,若产生异常将自动抛出. 3.java的异常类 java类库中有一个java.lang.Throwable类,是所有异常类的超类.Throwable类有两个直接子类,Error与Exception类,Exception类有一个子类RuntimeException.其中Exception类的直接或间接子类,除去RuntimException类的直接或间接子类,称为捕获异常(必须处理的异常),其他的都为未捕获异常. Throwable Error Exception ......(未捕获异常) RuntimeException ......(捕获异常) ......(未捕获异常) ;a.捕获异常(必须处理的异常) 捕获异常一般是由外界因素产生的,即使程序本身没有问题,也有可能产生(也可能恢复),在开发时必须考虑如何处理,否则编译不通过. b. 未捕获异常(不用处理的异常) 除了捕获异常以外的部分都是未捕获异常,即Error类及其子类以及RuntimeException类及其子类. 继承自Error的类一般代表由硬件运行失败导致的严重错误,而其从严格意义上讲,不属于异常,一般来讲,程序不能从Error中恢复。 而RuntimeException类的子类通常是指一些程序运行时错误引起的异常,所以也可以不对其进行处理. ;4.异常处理 4.1 try-catch 1.public class FirstException 2.{ 3. public static void main(String[] args) 4. { 5. try{ 6. int a = 2/0; 7. System.out.println(a=+a); 8. int [] ar = null; 9. System.out.println(ar.length); 10. }catch(ArithmeticException ae){ 11. ae.printStackTrace(); 12. }catch(NullPointerException np){ 13. np.printStackTrace(); 14. }catch(Exception e){ 15. e.printStackTrace(); 16. } 17. } 18.} ; 1.import java.net.*; 2.import java.io.*; 3.public class CatchException 4.{ 5. public static void m

文档评论(0)

yuzongxu123 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档