问题
我对此感到困惑。我们大多数人都被告知Java中没有任何goto语句。
但我发现它是Java中的关键字之一。哪里可以使用?如果它不能使用,那么为什么它作为关键字包含在Java中呢?
#1 热门回答(212 赞)
防止人们被迅猛龙杀死。
#2 热门回答(207 赞)
James Gosling在支持goto
语句的情况下创建了原始JVM,但随后他将此功能删除为不必要的。主要原因goto
是不必要的,通常它可以用更可读的语句(如break/continue
)或通过将一段代码提取到方法中来替换。
#3 热门回答(171 赞)
Java keyword list指定了goto
关键字,但标记为"未使用"。
它在最初的JVM中(见answer by @VitaliiFedorenko),但随后被删除。它可能保留为保留关键字,以防它被添加到更高版本的Java中。
Ifgoto
不在列表中,并且稍后会添加到该语言中,使用wordgoto
作为标识符(变量名,方法名等)的现有代码将会中断。但是因为goto
是一个关键字,这样的代码甚至不会在当前编译,并且仍然可以使它实际上稍后执行某些操作,而不会破坏现有代码。