为什么我的eclipse运行一个程序后,再写别的程序时,运行结果总是第一次的结果,是程序还是配置的问题?

程序为:
interface OneToN
{
int disp();
}
class Sum implements OneToN
{ int n;
public Sum(int n)
{
this.n=n;
}

public int disp()
{ int sum=0;
for(int i=1;i<=n;i++)
sum+=i;
return sum;
}
}
class Pro implements OneToN
{ int n;
public Pro(int n)
{
this.n=n;
}

public int disp()
{ int pro=1;
for(int i=1;i<=n;i++)
pro*=i;
return pro;
}
}
class OneToNTestWithInterface
{ public static void main(String[] args){
OneToN current;
current=new Sum(10);
System.out.println("10以内的整数和为:"+current.disp());
current=new Pro(10);
System.out.println("10以内的整数积为:"+current.disp());
}
}
运行结果为上个程序:
正方形面积为:9.0,周长为:12.0
长方形面积为:15.0,周长为:16.0
圆形面积为:3.14,周长为:12.0

这跟程序没关系,应该是eclipse的问题。
我刚才试了一下,在eclipse3.0里面,就是这个样子,直接点工具栏按钮或用快捷键,运行的就是上一次运行的程序;如果要运行本次的,可以选中在导航树中选中要运行的工程或java文件,右键->Run as;
而高版本的好像已经改进了,在eclipse indigo(3.7)版本中,会运行当前选中文件,而不是上次程序。
至于能不能配置,这个我没找到过,也不能确定追问

我知道了,解决了,我把它写到另一个工程下就可以了,但还是谢谢啦!

温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-10-15
你的main方法一定要是在一个声明为public的类中 要不java找不到你的程序入口追问

不是这样啊,我在下面的测试类class前加了public,反而提示错误,说The public type OneToNTestWithInterface must be defined in its own file!这是怎么回事呢?我的编辑器是eclipse 9.0 版的。谢谢啦!

第2个回答  2017-02-11
每次输完代码就ctrl+s保存,然后运行