毕业设计外文资料翻译--有效的Java:编程语言指南

毕业设计外文资料翻译--有效的Java:编程语言指南

ID:39456372

大小:72.50 KB

页数:12页

时间:2019-07-03

毕业设计外文资料翻译--有效的Java:编程语言指南_第1页
毕业设计外文资料翻译--有效的Java:编程语言指南_第2页
毕业设计外文资料翻译--有效的Java:编程语言指南_第3页
毕业设计外文资料翻译--有效的Java:编程语言指南_第4页
毕业设计外文资料翻译--有效的Java:编程语言指南_第5页
资源描述:

《毕业设计外文资料翻译--有效的Java:编程语言指南》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、毕业设计外文资料翻译学院:专业班级:学生姓名:学号:指导教师:外文出处:JoshuaBloch.EffectiveJava[M].London:AddisonWesley,2001.附件:1.外文资料翻译译文;2.外文原文指导教师评语:原文所涉及内容与课题有关联,翻译难度适中。该生所作的译文,术语的使用基本准确,译文内容与原文含义基本相符。译文格式符合规范,按时完成了外文翻译任务。签名:2015年10月14日外文资料翻译译文有效的Java:编程语言指南第六章方法本章讨论方法设计的几个方面:如何看待参数和返回值,如何设计方法

2、签名,以及如何记录的方法。大部分本章中的材料适用于构造以及方法。像第5章,这章的重点是易用性,稳健性和灵活性。项目23:检查的有效性参数大多数方法和构造有一定的限制,对什么样的值引入它们的参数。例如,这种情况并不少见的索引值必须为负,并且对象引用必须是非空。你应该清楚地记录所有这样的限制和与在方法体的开始检查,强制执行。这是一种特殊情况一般原则,你应该尝试尽快发生后,检测错误。如果不这样做使得它不太可能会被检测到的一个错误,并且使得它更难确定错误的来源一旦已检测到。如果一个无效的参数值被传递到一个方法,该方法检查其参数执行

3、前,它会很快就会完全失败,并适当的异常。如果该方法不检查其参数,几件事情都可能发生。可能会失败的方法一个令人困惑的异常处理之中。更糟的是,该方法能正常返回只是默默地计算错误的结果。最糟糕的是,该方法可以正常返回,但留下一些对象在一个妥协的状态,在对一些零散的点导致错误在某个不确定的时间以后的代码。对于公共方法,使用的Javadoc@throws标签来记录异常,这将是如果抛出的参数值的限制违反了(第44项)。通常情况下,异常会是抛出:IllegalArgumentException,IndexOutOfBoundsExcep

4、tion异常,或NullPointerException异常(42项)。一旦你已经记录了限制方法的参数,而你文件,如果这些限制被违反,将被抛出的异常,这是一个简单的不管执行的限制。下面是一个典型的例子:/***返回一个BigInteger,其值是(this模m)。这种方法不同于其余方法,因*为它总是返回一个非负的BigInteger。*@参数m的模量,必须明确。*@返回这个m模。*@抛出ArithmeticException异常,如果m小于等于0。**/publicBigIntegermod(BigIntegerm){if

5、(m.signum()<=0)thrownewArithmeticException("Modulusnotpositive");}对于未导出方法,你的包作者控制下的方法被调用的情况下,这样你就可以并应该确保只有合法的参数值是永远在过去了。使用断言,而不是正常的检查,因此非公开方式一般应检查其参数。如果您使用的是支持该平台的发布断言(1.4或更高版本),你应该使用断言结构;否则,你应该使用临时断言机制。检查的参数没有被使用的方法的有效性特别重要的是但被存储远离供以后使用。例如,考虑静态工厂方法86页,这需要一个int数组,

6、并返回数组的列表视图。如果此方法的一个客户机是传入null,则该方法将抛出NullPointerException因为方法包含一个明确的检查。如果检查被省略,该方法将返回一个参考到会尽快抛出NullPointerException作为一个新创建的List实例客户端试图使用它。到那个时候,不幸的是,List实例的起源可能是非常难以确定,这将极大地复杂化的调试任务。建设者代表原则的特殊情况,你应该检查的有效性那些参数要被存储远离供以后使用。这是非常重要的检查的有效性构造函数的参数,以防止一个对象,它违反类的建设不变。但也有例外

7、的规则,你应该之前检查方法的参数执行它的计算。一个重要的例外是这种情况,其中,合法性检查将是昂贵的或不实际和有效性检查在隐式执行这样计算的过程。例如,考虑进行排序的对象的列表的方法,如Collections.sort(列表)。所有列表中的对象必须是相互可比。在排序列表中的过程中,在列表中的每个对象将被比作某些列表中的其他对象。如果对象无法相互比较,这些比较之一将抛出一个ClassCastException,这正是排序方法应该做的。因此会有小点的时间提前检查,在列表中的元素是相互比较。但是请注意,这种技术的应用滥可能导致失败

8、的原子(项目46)的损失。有时,计算隐含进行一些必要的合法性检查参数,但是,如果检查失败引发错误的异常。也就是说,所不同的是计算自然会抛出的结果是无效的参数值不符合您已经记录扔法的例外。在这些的情况下,你应该使用的项目43所描述的异常转换成语翻译自然例外的是正确的。不要从这个项目上的参数任意限制是一件好

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。