【发布时间】:2012-05-29 19:23:24
【问题描述】:
我想为每个字段编写一次 Javadoc cmets,并在 getter 和 setter 方法中访问现有字段的 Javadoc。
我知道有 {@inheritDoc} 标记用于引用父方法的文档,但我想包含一个字段的文档,这当然不是父方法。
使用 Javadoc 是否可以“不重复自己”?
【问题讨论】:
标签: javadoc dry getter-setter
我想为每个字段编写一次 Javadoc cmets,并在 getter 和 setter 方法中访问现有字段的 Javadoc。
我知道有 {@inheritDoc} 标记用于引用父方法的文档,但我想包含一个字段的文档,这当然不是父方法。
使用 Javadoc 是否可以“不重复自己”?
【问题讨论】:
标签: javadoc dry getter-setter
除了@see,不知道如何。
但是,如果您要生成内部文档,则实际上不需要记录 getter/setter。如果您正在生成外部文档,则无论如何您都不会记录私有属性。
(说实话,由于 Java 工具链中的各种限制,我曾经有过一组相当壮观的脚本/等,它们可以处理 Java 源代码并执行类似这样的神奇事情。我放弃了一段时间以前现在 IDE 好多了,但是有一些东西,比如将多个文件编织到单个类中等等,真的很方便。有点像假的 mixins,一些 doc 魔法等等) p>
(实际上,链接到的 Spoon 项目与我正在做的非常相似,但在 1.5 之前。)
【讨论】:
@See 之外,我是否不必先导航到 setter 方法,然后将鼠标悬停在字段引用上才能访问文档?理想情况下,我只需将鼠标悬停在 getter/setter 上,然后找出我打算将该字段用于什么目的。 :)
我在我的 getter 上添加 javadoc cmets 并在字段上添加 {@link MyObject#get..()}。
因此,对于我的 API/对象的用户来说,它很容易阅读,如果我想获取更多信息,我(或其他开发人员)只需将鼠标悬停在我的私有字段上。
【讨论】:
使用Project Lombok 可以避免这种样板。只需记录字段变量,即使它是 private,并让 Lombok 注释生成正确记录的 getter 和 setter。
对我来说,仅此一项好处就值得costs。
【讨论】: