Eclipse允许我通过在“工作空间错误”对话框中按下继续按钮来运行它:
class MainClass
{
public static void foo()
{
}
public static void foo()
{
}
public static void main (String[] args)
{
}
}
这是否意味着功能重新定义是合法的?
答案 0 :(得分:4)
Eclipse允许您运行无法编译的代码。它用throw new Error("whatever the compilation error was");
取代了这样的代码。我认为这是一个非常糟糕(破碎如设计)的功能,但其他人喜欢它。
在你的情况下这是有效的,因为你还是不使用这个功能。
答案 1 :(得分:2)
否这是非法的,方法签名必须有所不同
答案 2 :(得分:2)
禁止两种方法具有相同的签名,这将无法编译。
答案 3 :(得分:0)
再次检查,您应该收到以下错误
Duplicate method foo() in type MainClass