假设我有这个:
/**
* Single-word method.
*/
private void say(String word) {
System.out.println("Single word: " + word);
}
/**
* Multiple-word method.
*/
private void say(String... words) {
System.out.print("Multiple words: ");
for (String word : words) {
System.out.print(word);
}
System.out.println();
}
/**
* {@link #say(String...)}
*/
@SuppressWarnings("unused")
private void testJavadoc() {
}
public static void main(String[] args) {
say("hello");
say("world");
say("hello", "world");
}
如果我跑这个,我得到:
Single word: hello
Single word: world
Multiple words: helloworld
这证明使用String
定义方法和使用String...
重载没有任何问题。
当我鼠标悬停testJavadoc()
时,这就是我看到的Javadoc:
void testJavadoc()
@SuppressWarnings(value={"unused"})
say(String)
单击say(String)
将我带到Javadoc,获取第一个没有vararg的方法。
如果我删除say(String)
方法,那么Javadoc工作正常。
我正在使用eclipse neon 3(4.6.3)。这应该是正确的行为吗?