如何在JavaDocs中引用“* /”

我有一个需要包括*/在我的JavaDoc评论。 问题是,这也是closures评论的相同顺序。 引用/逃避这个的正确方法是什么?

例:

 /** * Returns true if the specified string contains "*/". */ public boolean containsSpecialSequence(String str) 

跟进 :看来我可以使用/ 为斜线。 唯一的缺点是,当在文本编辑器中直接查看代码时,这不是完全可读的。

 /** * Returns true if the specified string contains "*/". */ 

使用HTML转义。

所以在你的例子中:

 /** * Returns true if the specified string contains "*/". */ public boolean containsSpecialSequence(String str) 

/ 作为“/”字符转义。

Javadoc应该将未转化的顺序插入到它生成的HTML中,并且在浏览器中应该显示为“* /”。

如果你想要非常小心,你可以逃避这两个字符: */ 转换为*/

编辑:

跟进:看来我可以使用/ 为斜线。 唯一的缺点是,直接查看代码时,这不是完全可读的。

所以? 重点不在于你的代码是可读的,关键是你的代码文档是可读的。 大多数Javadoc评论embedded复杂的HTML来解释。 地狱,C#的等价物提供了一个完整的XML标签库。 我已经看到了一些相当复杂的结构,让我告诉你。

编辑2:如果它太麻烦了,你可能会embedded一个非javadoc内联注释来解释编码:

 /** * Returns true if the specified string contains "*/". */ // returns true if the specified string contains "*/" public boolean containsSpecialSequence(String str) 
 /** * Returns true if the specified string contains "*/". */ 

这是“正确”的解决scheme,但为了可读性,我可能会去:

 /** * Returns true if the string contains an asterisk followed by slash. */ 

没有人提及{@literal} 。 这是另一种方式:

 /** * Returns true if the specified string contains "*{@literal /}". */ 

不幸的是,你不能一次逃脱*/ 。 有一些缺点,这也解决了:

唯一的缺点是,当在文本编辑器中直接查看代码时,这不是完全可读的。

使用实体

 */ 

在你的文档中它会显示为“* /”

我build议你也在附近说一些类似的东西来添加一行注释

 // */ is html for */ 

我偶然发现的另一种方式,只是为了完整性:添加一些不改变*和/之间的输出的HTML标记。

  /** * *<b/>/ */ 

与HTML转义解决scheme相比,这似乎是一个丑陋的黑客攻击,但它也产生了HTML输出的正确结果。