2010-09-01 50 views
28

我知道有@inheritDoc,但它只是覆盖他人的方法。如何将方法的Javadoc复制到其他方法的Javadoc中?

我有几类有许多委托方法(它做覆盖等)。

他们的Javadoc可以“继承”(更确切地说:复制)吗?

/** here I need the copy of wrappedMethod's Javadoc */ 
public void delegateMethod(Object param){ 
    innerSomething.wrappedMethod(param); 
} 
+0

密切相关,但专门用于重载的方法:http://stackoverflow.com/questions/2558695/javadoc-and-overloaded-methods/28114175#28114175 – 2015-02-14 20:05:12

回答

10

@link或@see标记在这里是适合的。如果您要包装该方法,则必须提供与众不同的行为,使其不适合超载或其他方式。

+1

是的,但'@ link'或'@ see'很遗憾不是有用的时候,包装的方法是受保护的:( – 2010-09-01 13:03:09

+3

,除非你生成受保护的方法javadocs ... – 2010-09-01 13:26:01

+0

'@ seanizer'哦,我不知道这是可能的,谢谢你! – 2010-09-01 17:17:41

8

有时切割和粘贴文档实际上是一件好事。以某种方式“链接”文档,尤其是在没有继承关系时,会冒着某种方法使其行为发生某种变化的风险,从而使链接文档不再有效。

但是,在代表们的情况下,我有过几次同样的问题。通常,您在委托给包 - 专用委托的主类上有公共方法,它具有与主方法完全相同的行为。这里的解决方案很简单 - 记录主类,并将@link或@see放在委托类上。每个人都可以看到主类的文档。您可能还需要在委托类上具有更详细的文档,例如实现细节。