一个java程序中有 两个main()函数,一个在public类中,另一个在没有修饰符的类中,先执行哪个呢?代码如下:

时间:2022-01-13 19:57:42
class Cleanser{
private String s="Cleanser";
public void append(String s){s+=s;}
public void dilute(){
append("diute()");
}
public void apply(){
append("apply()");
}
public void scrub(){
append("scrub()");
}
public String toString(){return s;}
public static void main(String[] args){
Cleanser x=new Cleanser();
x.dilute();x.apply();x.scrub();
System.out.print(x);
}
}
public class Detergent extends Cleanser {
public void scrub(){
append("Detergent.scrub()");
super.scrub();
}
public void foam(){append("foam()");}

public static void main(String[] args) {
Detergent x=new Detergent();
x.dilute();
x.apply();
x.scrub();
x.foam();
System.out.print(x);
System.out.println("Testing base class: ");
Cleanser.main(args);


}

}

5 个解决方案

#1


肯定是运行有public的那个啊

#2


但是运行这程序好像不行,这程序哪错了吗?而且如果把 Cleanser类注释掉了运行就出错了,提示找不到main函数

#3


一个程序中怎么可能有两个main方法

#4


我也不知道哎

#5


可以指定吧,eclipse的话你在哪个类的界面就运行哪个类的main,也可以右键指定运行某个类的main。

#1


肯定是运行有public的那个啊

#2


但是运行这程序好像不行,这程序哪错了吗?而且如果把 Cleanser类注释掉了运行就出错了,提示找不到main函数

#3


一个程序中怎么可能有两个main方法

#4


我也不知道哎

#5


可以指定吧,eclipse的话你在哪个类的界面就运行哪个类的main,也可以右键指定运行某个类的main。