史上最全EffectiveJava总结(二)

打印 上一主题 下一主题

主题 1782|帖子 1782|积分 5346

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

x
方法

49、检查参数的有效性

每次编写方法或构造函数时,都应该考虑参数存在哪些限制,并在文档中记载下来,然后在方法的开头显式地检查。
如果没有在方法开头就验证参数,大概会违反故障原子性。因为方法大概会在执行过程中出现让人困惑的非常而失败,或者计算出错误的结果然后返回,甚至大概埋藏隐患,导致将来在不确定的某处代码产生错误。
对于公共方法和受掩护的方法,使用@throws 标签记载违反参数限制会引发的非常,比方 IllegalArgumentException、IndexOutOfBoundsException 或 NullPointerException。见下面例子:
[code]/*** Returns a BigInteger whose value is (this mod m). This method* differs from the remainder method in that it always returns a* non-negative BigInteger.**@param m the modulus, which must be positive* @return this mod m* @throws ArithmeticException if m is less than or equal to 0*/public BigInteger mod(BigInteger m) {    if (m.signum()
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

魏晓东

论坛元老
这个人很懒什么都没写!
快速回复 返回顶部 返回列表