为什么在Linkedlist中注释掉断言。java源代码
我一直在调查linkedlist。java,sun的源代码。它在私有函数中添加断言方面做得很好。有效的java明确指出,即使是私有函数也应该进行验证。 目前尚不清楚的是,为什么所有断言都在链接列表代码中注释掉了
这里有一个快速链接:http://www.docjar.com/html/api/java/util/LinkedList.java.html
谢谢
你可以在下面搜索框中键入要查询的问题!
我一直在调查linkedlist。java,sun的源代码。它在私有函数中添加断言方面做得很好。有效的java明确指出,即使是私有函数也应该进行验证。 目前尚不清楚的是,为什么所有断言都在链接列表代码中注释掉了
这里有一个快速链接:http://www.docjar.com/html/api/java/util/LinkedList.java.html
谢谢
# 1 楼答案
那一定是个错误
由于断言在生产环境中没有成本(参见Enabling and Disabling Assertions),所以在从开发切换到公开发布时,没有理由对其进行评论
如果一个断言由于任何原因看起来毫无用处,那么它应该在公开发布之前被完全删除,而不是被注释掉
可能有很多实际原因(我不会列出假设)让开发人员一次性对它们进行注释,但这些注释不应该进入发布的代码中