在源代码中,我忘了在链接之前添加注释。 例如,以下代码:
public class HelloWorld
{
public static void main(String[] args)
{
http://www.example.com/random-link-here
System.out.println("Hello World!");
}
}
为什么要编译?以某种方式无法弄清楚它的作用......它就像Goto +评论的标签,但是Java没有goto ...
答案 0 :(得分:6)
http:
部分是label标记后面的语句。 //
部分引入了line comment。
通常,您会在定向break
情况下看到带标签的语句,例如:
outer:
for (int i = 0; i < 10; ++i) {
for (int j = 0; j < 10; ++j) {
if (someConditionThatNeedsToTakeUsOutOfBothLoops) {
break outer;
}
}
}
...但是任何声明都可能有标签。在您的情况下,您已标记System.out.println("Hello World!");
声明。
答案 1 :(得分:5)
因为:
http: //www.example.com/random-link-here
^^^^ ^--------------------------------^
http:
是标签,其余为评论
答案 2 :(得分:1)
这是一个着名的Java Puzzler。它是带注释的goto的标签。 Java保留goto关键字,但实际上并没有实现goto语句。从http://www.javapuzzlers.com/看Puzzler 22作为一个相关的例子。