我一直在研究关注listlist.java,sun的源代码。它在私有函数中添加断言方面做得很好。有效的java清楚地表明甚至应该验证私有函数。 还有什么不清楚的是为什么所有断言都在Linkelist代码中被注释掉了?
以下是一个快速链接:http://www.docjar.com/html/api/java/util/LinkedList.java.html
谢谢,
答案 0 :(得分:1)
那一定是个错误。
由于断言在生产环境中没有成本(参见Enabling and Disabling Assertions),因此在从开发版本切换到公开发布版本时没有理由对它们进行评论。
当断言因任何原因出现无用时,应在公开发布之前完全删除,而不是注释掉。
可能有许多实际原因(我不会列出假设)让开发人员一次对它们进行评论,但这些评论不应该发布到已发布的代码中。