公共方法与公共 API

Mun*_*jah 3 java code-cleanup effective-java

在干净的代码书中,有一个观点是“公共 API 中的 Javadocs”。

同样,《Effective java》一书也有这样的内容:

“项目 56:为所有公开的 API 元素编写文档注释”。

所以这就是我的问题“所有公共方法都被视为公共 API 吗?”

Ken*_*han 5

它们对我来说是不同的东西。

公共API是公开发布给全世界使用的API。因此,预计许多您无法控制的客户端会使用它。这也意味着更改更加困难,因为如果您想确保任何更改都不会破坏现有客户端,则需要考虑向后兼容性等问题。因此,它们应该在 javadoc 中详细记录以描述实际行为。

公共方法只是声明为公共的java方法。您可以声明一个仅供内部使用的公共方法,在这种情况下,它不是公共 API。由于它仅在内部使用,因此您可以完全控制使用它的客户端。更改 API 签名及其行为要容易得多,因为您可以更改这些客户端以适应新的更改。

另请参阅这篇文章,了解公开和公开之间的区别实际上比公开和私人之间的区别更重要。