javadocs'{@ link #method}'中'#'的目的是什么?

时间:2013-01-17 12:18:21

标签: java javadoc

javadoc链接标记中散列'#'的目的是什么?

/** Call {@link #method} to do foo. */

4 个答案:

答案 0 :(得分:6)

它是类和方法之间的“分隔符”。

例如,您可以在同一个类中包含对方法的引用:

{@link #methodA() whatever}

或者引用其他类中的方法,然后语法是class#method,即

{@link MyClass#methodA() whatever}

然后#是分隔符。

答案 1 :(得分:6)

Javadoc uses # as a separator between class and method/constructor signatures or field names to avoid ambiguous links.

Javadoc @link和@see标记可以用于对类中的包,类和特定方法/构造函数或字段的引用。这可能不是很明显,但有必要这样做是合法的。包“a.b”中的类“c”和包“a”中的类“b”,在同一项目中具有名为“c”的字段。 “package a.b,class c”的Javadoc链接将写为“a.b.c”,而“package a,class b,field c”的链接将写为“a.b #c”。如果名称不同,Javadoc工具也会接受。方法,构造函数或字段之前的分隔符。

如果链接以#开头,则它引用同一类中的方法/字段/构造函数。这类似于HTTP网址中的锚点使用,其中href =“doc.html#a1”指的是“doc.html”中的“a1”锚点,而href =“#a1”指的是“a1”锚点。同一份文件。

答案 2 :(得分:1)

来自the doc

  

插入带有指向的可见文本标签的内嵌链接   指定包,类或成员名称的文档   引用的类。此标记在所有文档评论中都有效:概述,   包,类,接口,构造函数,方法和字段,包括   任何标签的文本部分(例如@return,@ param和@deprecated)。

答案 3 :(得分:0)

它在同一个类中插入另一个方法的javadoc的链接。

例如,在String.isEmpty() javadoc中,有String.length()方法的链接。

javadoc是:

Returns <tt>true</tt> if, and only if, {@link #length()} is <tt>0</tt>.