绝大多数方法和构造函数都对传入的参数有某些限制,如索引必须是非负数,对象引用不能是null,等等。如果一个无效的参数传入,应该首先对参数进行检查,如果有问题方法应很快失败,并清楚地抛出一个适当的异常(exception)指明错误的原因。同时应该使用Javadoc的@throws标签来说明。
检查参数有效性的方法和形式可能因具体情况而异。这里要介绍一个“新”手段——assert(断言)。assert是Java1.4之后引入的为人热切期盼的一项新功能。您可以将该功能看作是异常处理的一种高级形式。断言表示为一些布尔表达式,程序员相信在程序中的某个特定点该表达式的值为真。例如,程序员可能会在程序中使用断言,使您永远也不会到达 switch 语句中的 default 条件。更多关于断言的介绍请见 http://publish.it168.com/2006/0317/20060317029801.shtml或搜索网络。
总之,当你编写一个方法或构造函数时,应该考虑对于它的参数都有哪些限制。你应当写到文档中,并在方法的开头进行检查。养成这样的习惯是非常重要的,这会使错误尽早地、准确地暴露出来。