- 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 异常类处理
译 文
学 院: 计算机科学与工程学院
专 业: 计算机科学与技术
学 号:
姓 名:
指导教师:
江 苏 科 技 大 学
二零一零年六月
高效的JAVA 异常类处理
Barry Ruzek
01/10/2007
摘要
Java开发人员可以做出的最重要的架构性决策之一就是如何使用Java异常模型。Java异常一直以来就是争议的。有人争论到,在Java语言中的异常检查已是一场失败的试验。本文将辨析失败的原因不在于Java异常模型,而在于Java类库的设计者未能充分到方法失败的两个基本原因。?本文倡导一种对异常条件本质的思考方式,并描述一些有助于设计的模式。最后,本文还将在AOP模型中,作为相互渗透的问题,来讨论异常的处理。当你能正确使用异常时,它们会有极大的好处。本文将帮助你做到这一点。为何异常是如此重要?Java应用中的异常处理在很大程度上揭示了其所基于架构的强度。架构是在应用程序各个层次上所做出并遵循的决定。其中最重要的一个就是决定应用程序中的类,亚系统,或层之间沟通的方式。Java异常是Java方法将另类执行结果交流出去的方式,所以值得在应用架构中给予特殊关注。?一个衡量Java设计师水平和开发团队纪律性的好方法就是他们应用程序里的异常处理代码。首先要注意的是有多少代码用于捕获异常,写进日志文件,决定发生了什么,和在不同的异常间跳转。干净,简捷,关联性强的异常处理通常表明开发团队有着稳定的使用Java异常的方式。当异常处理代码的数量甚至要超过其他代码时,你可以看出团队之间的交流合作有很大的问题(可能在一开始就不存在),每个人都在用他们自己的方式来处理异常。?对突发异常的处理结果是可以预见的。如果你问问团队成员为什么异常会被抛出,捕获,或在特定的一处代码里忽视了异常的发生,他们的回答通常是,“我没有别的可做”。如果你问当他们编写的异常真的发生了会怎么样,他们会皱皱眉,你得到的回答类似于这样,“我不知道。我们从没测试过。”?你可以从客户端的代码判断一个java的组件是否有效利用了java的异常。如果它们包含着大堆的逻辑去弄清楚在何时一笔操作失败了,为何失败,是否有弥补的余地,那么原因很有可能要归咎于组件的报错设计。错误的报错系统会在客户端产生大量的“记录然后忘掉”的代码,这些代码鲜有用途。最差的是弄拧的逻辑,嵌套的try/catch/finally代码块,和一些其他的混乱而导致脆弱而难于管理的应用程序。?事后再来解决Java异常的问题,或根本就不解决,是软件项目产生混乱并导致滞后的主要原因。异常处理是一个在设计的各个部分都急需解决的问题。对异常处理建立一个架构性的约定是项目中首要做出的决定。合理使用Java异常模型对确保你的应用简单,易维护,和正确有着长远的影响。解析异常?正确使用Java异常模型所包含的内容一直以来有着很大的争议。Java不是第一种支持异常算法语义的;但是,它却是第一种通过编译器来执行声明和处理某些异常的规则的语言。许多人都认为编译时的异常检查对精确的软件设计颇有帮助。通常,Java编译器强迫抛出基于java.lang.Throwable的异常的方法要在它声明中的“throws”部分加上那个异常。而且,编译器还会证实客户端的方法或者捕获已声明的异常,或者特别声明自己也抛出同样的异常。这些简单的规则对世界范围的Java程序员都有深远的影响。?编译器放松了对Throwable继承树中两个分支的异常检查。java.long.Error和java.lang.RuntimeException的子类免于编译时的检查。在这两类中,软件工程师通常对运行中异常更感兴趣。“不检查”的异常指的是这一组,以便和所有其它“检查”的异常区别开。我可以想象那些接受“检查”的异常的人,也会很看重Java的数据类型。毕竟,编译器对数据类型施加的限制鼓励严格的编码和精确的思维。编译时的类型检查对减少运行时的严重问题有帮助。编译时的异常检查也能起到类似的作用,它会提醒开发人员某个方法可能会有预想不到的结果需要处理好。早期的建议是尽可能的使用“检察的异常”,以此来最大限度的利用编译器提供的帮助来写出无错误的软件。Java类库API的设计者们都认同这一点,他们广泛地使用“检察的异常”来模拟类库方法中几乎所有的紧急应变措施。在J2SE5.1 API规格中,“检察的异常”类型已2比1的比率超过了“未检查的异常”类型。?对程序员而言,看上去在Java类库中大多数的常用方法对每一个可能的失败都声明了“检察的异常”。例如,java.io包?对IOException这个“检察的异常”就有着很大的依赖。至少有63个Java类库包,或直接,或通过十几个下面的子类,抛
您可能关注的文档
- 美容养生医疗1.doc
- 美术学专业毕业设计论文-浅析定格动画一朵忧郁的男子创作过程.doc
- 美术学本科毕业设计论文-谈风光摄影中光线的应用.doc
- 美容养生医疗2.doc
- 群众路线 回头看才能更好“向前走”优选3篇.doc
- 群众路线中国梦心得体会发言稿.doc
- 群众路线之读了马克思主义哲学原理心得体会2篇.doc
- 群众路线 回头看才能更好“向前走”优选两篇.doc
- 群众路线回头看资料大全.doc
- 群众路线教育之作风建设永远在路上与公安干警纪律作风整顿活动心得体会.doc
- 计算机系毕业设计论文-XX校园局域网组成计划及网络安全部署.doc
- 计算机网络技术毕业设计论文-大厦智能网络布线.doc
- 计算机组成原理课程设计报告-基于VHDL的模拟地铁售票控制系统设计与实现.doc
- 计算机类毕业设计论文-Web新闻管理系统的开发,分析,设计,实现和测试过程设计.doc
- 计算机网络技术毕业设计论文-宿舍管理系统论文(易语言).doc
- 计算机网络课程设计--双机通信聊天热线的制作设计.doc
- 计算机网络系统实践报告-基于Java的网络版坦克大战游戏设计.doc
- 计算机网络技术-NAT技术在局域网中的应用 毕业论文.doc
- 计算机网络技术毕业设计论文-网科公司网络规划与设计.doc
- 认真学习七五普法的心得体会与财政票据管理年终总结.doc
最近下载
- 长春工程学院官方蓝色模板-长春工程学院图书馆.ppt VIP
- 中国蛛网膜下腔出血诊治指南【最新版】 .pdf VIP
- 中建室外景观园林施工方案.docx VIP
- 2024-2025学年苏教版初中生物初中生物八年级下册全册(教案含反思).docx VIP
- 公司知识产权管理制度[实施].pdf VIP
- 2023版中级消防设施操作员理论考试必考点内部模拟题库含答案w.pdf VIP
- 质量目标分解.docx VIP
- 新解读《GB_T 39968-2021建筑用通风百叶窗技术要求》最新解读.pptx VIP
- )部编版二年级语文上册全册教案.docx
- 高中英语外研英语必修三教师课件Module 4 Sandstorms in Asia.ppt VIP
文档评论(0)