- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Java 实用程序的设计第7章 异常处理
7.1 异常的概念与分类 在程序的执行过程中,有可能碰到异常的情况(exceptional condition)。所谓异常情况,一般指阻止当前方法或作用域继续执行的问题。对于异常情况,在当前环境下无法获得足够的信息来解决问题,因此需要从当前环境中跳出,并将问题交给上一层环境。 图7-1 标准异常类层次 Java程序中的异常类又可进一步分为两种主要类型: (1) 系统错误:由Java虚拟机抛出,由Error类及其子类表示。 (2) 异常:由Exception类及其子类表示。 7.2 异常的处理方法 1. 捕获并处理异常 当程序产生并抛出一个异常时,首要的处理方式就是捕获该异常并对该异常进行处理。 捕获并处理异常是通过try-catch-finally语句来实现的,其基本格式如下: 在程序设计时,将所有可能出现异常的语句都放在try语句块中。try语句块之后必须紧跟至少一个catch语句块,每个catch语句块形如: catch (ThrowableType ref) {/*异常处理程序*/} 2. 将方法中产生的异常抛出 可能产生异常的方法如果不处理该异常,那么Java虚拟机就会将该异常抛出到调用该方法的程序。异常的产生可能有多种来源,可以是由虚拟机自动产生的运行时异常,也可以是程序员主动创建的异常。主动创建和抛出异常是通过throw语句实现的,形如: throw someThrowableObj; 如果在throw语句所在的方法中没有找到对应的catch语句块,那么异常对象就会被抛出到调用当前方法的方法,如果被抛出的异常是必检异常,那么就必须在当前方法的声明中说明方法能够抛出该异常。声明的格式在第3.3节中已经介绍过,即形如: 返回值类型 方法名( [参数列表] ) [throws 异常类型列表] {…} 7.3 自定义异常类 Java的异常类体系提供了很多预定义的异常类,在实际程序设计中,尽可能使用这些预定义的异常类以降低程序的复杂度。然而,现实中的确存在一些无法用预定义的异常类描述的问题,因为预定义异常类体系无法预见所有可能出现的程序错误。如果希望报告那些已定义的异常情况之外的特定问题,就需要用户自己定义异常类。 在例7-6中,从Exception类继承出一个自定义异常类MyException,该异常类包含两个构造方法,默认构造方法直接调用Exception类的默认构造方法,而非默认构造方法传入一个String参数,并将字符串作为Exception对象构造的参数。UsingMyException类的f()和g()方法分别显式地抛出MyException对象,方法g()在抛出的MyException对象中加入了“Originated in g()”作为异常信息。当在main()方法中调用方法f()或g()时,异常处理程序能够捕获到抛出的MyException对象。 * * 第 7 章 异 常 处 理 第 7 章 异 常 处 理 7.1 异常的概念与分类 7.2 异常的处理方法 7.3 自定义异常类 * * 第 7 章 异 常 处 理
您可能关注的文档
- Design Patters Composite & Observer的设计模式复合&;观测器.ppt
- Dandelions 2006 first results蒲公英2006第一的的结果.ppt
- DfES Schools in Extremely Challenging Circumstances the WMnet英国学校在极具挑战性的的环境下的wmnet.ppt
- DEVELOPMENT CONTRIBUTION SCHEME发展贡献的方案.doc
- Development partnership Dublin Employment Pact发展伙伴的关系都柏林就业协议.ppt
- Direct Waveguide Couplers for the LHC Crab Cavity Cern直波导腔的欧洲核子的研究中心的大型强子对撞机的蟹.ppt
- Directions Write your answers as complete sentences, citing the 方向写下你的的答案作为完整的句子,引用.doc
- DE型氧化沟毕业的设计.doc
- Disability Equality Scheme Home Page EPSRC残疾人平等的方案首页英国.doc
- diggamesmotivationq2ppt LINKEDprojectdiggamesmotivationq2ppt相关的的项目.ppt
文档评论(0)