Eclipse运行程序,当通过命令提示符运行时,它也不起作用
问题描述:
我正在浏览一些基本的Java概念。我正在调查方法并试图验证此错误Eclipse运行程序,当通过命令提示符运行时,它也不起作用
"MethodSignature.java:10: error: method m1(String) is already defined in class MethodSignature
public static void m1(String s)"
从命令提示符运行时出现上述错误。但是在eclipse中运行时,虽然它显示错误,但程序会打印所需的字符串。在命令提示符下,我没有收到上述错误。
为什么在Eclipse和命令提示符执行有区别吗?
正如在命令提示符下,我不能够运行程序本身,因为这个错误应该阻止我。我期待Eclipse中的一样。
这是我简单的程序。
public static void m1(String s)
{
System.out.println(s);
}
public static void m1(String s)
{
System.out.println(s);
}
public static void main(String[] args)
{
m1("call one");
m1("call two");
}
答
您必须运行一个以前编译的类,你不能声明m1
两次。然而,eclipse确实有它自己的编译器(ecj);并且可以运行代码来忽略错误(在这种情况下,它会为您删除无效的代码)。
阅读https://stackoverflow.com/questions/3061654/what-is-the-difference-between-javac-and-the-eclipse-compiler为您提供关于你的问题的更多细节。 –
谢谢@NavneetRabadiya –