【问题标题】:Javadoc link tag with List parameter带有 List 参数的 Javadoc 链接标记
【发布时间】:2015-02-20 17:16:27
【问题描述】:

我正在写一个 javadoc 链接标签,参数 List 是这样的。

{@link #getVersionMetadata(String, String, String, List<String>)

我感觉不对。 IDE 似乎无法接受转义 &lt;&gt;

{@link #getVersionMetadata(String, String, String, List&lt;String&gt;)

将 List 与 javadoc @link 一起使用的正确方法是什么?

【问题讨论】:

  • 类型参数不会改变方法的签名,所以你不可能有一个以上的方法和两个不同的组件类型作为列表参数;这将导致编译错误。因此,该链接将始终有效。如果您担心的是最终文档链接中出现的文本,您可以使用 {@link 注释的参数来控制它。
  • 这个问题不是泛型问题。
  • @ValentinRuano,我想我明白了你的意思,但类型参数在签名中很重要——调用的输出类型可能会受到签名中出现的类型参数的影响。签名中的类型参数不会影响静态分派——您不能通过仅更改类型参数来重载方法,因此您不能通过向静态输入类型添加或专门化类型参数来影响调用哪个方法。跨度>
  • @MikeSamuel 返回类型可能会改变,但重载的方法应该几乎相同,尽管输入参数不同。我认为,如果链接(请注意,这只是一个链接)具有完整的 args 列表(特别是超过 2 个)来理解它对文档很重要,则表明您要么超载,要么该链接周围的文档可以写得更好。我认为添加形式参数的可能性背后的主要原因是消除链接本身的歧义,而不是记录本身;用户应该点击该链接

标签: java javadoc


【解决方案1】:

您可以像这样更改链接中的文本以反映列表类型参数...

   {@link #getVersionMetadata(String, String, String, List) getVersionMetaData(String,String,String,List&lt;String&gt;)}

【讨论】:

    【解决方案2】:

    应该可以的:

    {@link #getVersionMetadata(String, String, String, List)}
    

    【讨论】:

    • 但这并不表示我的是一个字符串列表?
    • @SenthilKumaran 真的很重要吗,这只是相应文档的链接
    • 是的,我认为这个答案中给出的解释说明了原因:stackoverflow.com/a/9541824/783510
    猜你喜欢
    • 2013-08-04
    • 2021-09-25
    • 2011-01-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-07-28
    • 2021-06-04
    • 1970-01-01
    相关资源
    最近更新 更多