JAVA程序设计教程 作者 赵莉 第1-6章 第6章.pptVIP

JAVA程序设计教程 作者 赵莉 第1-6章 第6章.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
   6.1 异常的概念与异常处理   在传统的面向过程的程序设计中,通常依靠程序员来预先估计可能出现的错误情况,并对出现的错误进行处理,语言系统本身并没有提供行之有效的错误处理机制。因此,在面向过程的程序设计中,错误处理一直是影响程序设计质量的一个瓶颈。在面向对象的程序设计中,在系统定义异常类的基础上,辅之以用户自定义异常,使得程序中出现的异常问题以统一的方式进行处理,不仅增加了程序的稳定性和可读性,更重要的是规范了程序的设计风格,有利于提高程序的质量。 6.1.1 程序错误、发现时刻及错误处理原则   即使是最有经验的程序员也不可能完全避免编程错误。程序中的错误最好在运行之前(如编译时)发现,但是有些错误却必须在运行时解决。程序运行时发生的错误称为异常,即程序运行过程中出现的非正常事件,是程序错误中的一种。异常又称例外,比如:在进行除法运算时,除数可能为零。为保证程序安全运行,程序中需要对可能出现的异常进行相应的处理。   处理异常的方法有许多种。在以前的语言中,最常见的方法是在程序中每一处可能出现运行错误的地方都加上错误检测和处理代码。比如:编写一个方法时,需要返回一个值或设置一个标志,而每次调用方法时,都要对这些返回值或标志进行检查,以判断方法调用过程中是否发生错误并作相应处理。这样,如果方法调用大量存在,与之相关的异常处理代码也将会大量存在并且分散在程序中。因此,使用这种方法处理异常将会使得程序的可读性和维护性大大降低,出错返回信息量太少,无法更确切地了解错误状况或原因,只处理了能够想到的错误,对未知的情况无法处理。 6.1.2 Java的错误和异常   在Java程序的运行中,通常可能遇到两种错误:一种是致命错,例如,程序运行过程中内存空间不足等,这将导致程序不能简单地恢复执行;另一种是非致命错,例如数组越界等,这种错误通过修正后程序仍然可以继续执行,这种严重的不正常状态,通常称为错误(Error),通常称为异常(Exception)。   Java作为一个完全面向对象的语言,异常处理也是采用面向对象的方法。所有的异常都是以类的形式存在的,除了内置的异常类之外,Java也允许自己定义异常类。如果在一个方法的运行过程中发生了异常,则这个方法将生成一个代表该异常的对象,并把它提交给正在运行这个方法的系统,这个过程称为抛出异常。系统在运行的时候查找处理异常的方法,这个过程称为捕获异常。异常对象中包含有重要的信息,包括发生异常事件的类型和异常发生时的程序运行状态。对待异常通常不是简单地结束程序,Java语言的异常处理方法有下列主要优点:   (1) ?Java 通过面向对象的方法进行异常处理,把各种不同的异常事件进行分类,体现了良好的层次性,提供了良好的接口。   (2) ?Java的异常处理机制使得处理异常的代码和“常规”代码分开,减少了代码的数量,同时增强了程序的可读性。   (3) ?Java的异常处理机制使得异常事件可以沿调用栈自动向上传递,而不像C/C++语言中通过函数的返回值来传递,这样可以传递更多的信息并且简化代码的编写。   (4) 由于把异常事件当成对象来处理,利用类的层次性就可以把多个具有相同父类的异常统一处理,也可以区分不同的异常分别处理,使用非常灵活。   (5) ?Java异常处理机制为具有动态运行特性的复杂程序提供了强有力的控制方式。   下面通过一个简单的例子,初步了解何时会出现异常。  【示例6-1】 Exceptionxb.java数组下标超界。  public class Exceptionxb{ public static void main(String args[]){ String langs[]={Java, Visual Basic,C++}; int i=0; while(i4){ System.out.println(langs[i]); i++; } } }   程序运行结果:   Java   Visual Basic   C++   Exception in thread “main” java.lang.ArrayIndex OutOfBoundsException: 3    at Exceptionxb.main(Exceptionxb.java:6)   上面的例子可以通过编译,但运行时出现了异常信息。在其被循环执行4次之后,数组下标溢出,程序终止,并带有错误信息。      6.2 Java的异常处理   Java系统中定义了一些用来处理异常的类,称为异常类,该类中通常包含产生某种异常的信息和处理异常的方法等内容。当程序在运行中发生了可以识别的异常时,系统便产生一个相应异常类的异常对象,简称异常。系统中一旦产生了

您可能关注的文档

文档评论(0)

开心农场 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档