Java;如何在代码中访问注释

4
这可能有些奇怪。我有一些方法注释中的文本,我可以这样链接到它:
/** {@link com.mypackage.YetAnotherClass#myMethod(String)}. */
但我想在代码中使用该文本作为字符串的一部分。似乎我有两个选择:
1.将文本从注释复制粘贴到代码中。 2.创建一个具有静态字段的类,并在其他类的注释和代码中使用它。
第一种选择违反了DRY原则,第二种方法通过创建新类使代码变得更加复杂。是否有另一种方法可以在代码中使用注释的文本?

1
选择第二个选项,将您的字符串放入静态字段中。在您的Javadoc中使用@value来包含其值在文档中。 - BeyelerStudios
你为什么想把它放在注释里? - grey00
你想要实现什么目标? - Muhammad Hewedy
编译后的类中不包含任何注释。你需要使用工具从源代码(或之前生成的javadocs)中提取它们,或者在编译前转换源代码以将注释嵌入到编译后存在的某些内容中。通常来说,编译后不应该“需要”注释——更好地解释实际用例可能会得到更好(和更专注)的回复。 - user2864740
1个回答

1

我不确定我理解你在做什么,但是你可以像这样在注释和代码中重用一些文本字符串:

public class A {
    /**
     * {@link B#method()}.
     */
    void method() {
        System.out.println(B.comment);
    }
}


public class B {
    public static final String comment = "This is some comment";
    /**
     * Comment: {@value #comment}
     */
    void method() {
    }
}

我不认为重复使用短语或单词违反DRY原则......


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接