在同一个java程序中,能不能用一个类去调用另一个包含main()方法的类?

在同一个java程序中,有很多类,如果其中两个类里面都有一个main()方法,这两个main()不是一样的.. 能不能用一个类去调用一个包含main()方法的类?如果能应该怎么调用?
我用的环境是 Eclipse jdk1.7.0
我想调用的那个包含main()方法的类..是静态的.. 我就是直接 类名.mian(args) 去调用的..为什么提示我说args cannot be resolved. ?还有就是我是在一个没有main()方法的类里调用的.. 我们老师让写一个调用数据库的程序..用GUI去设计..我就想在button响应事件中设置对数据库的调用..达到点击一个按钮..就调用一下数据库里的数据.. 我连接数据库的类里有个main()方法..就不知道怎么在另一个类去调用它了.....

你是说有两个类?两个类都有main方法,在一个有main方法的类中调用另一个有main方法的类?

这个随便调用的嘛,如果被调用的方法是静态的,直接类名.方法()就可以了,如果是非静态方法只要new一个类,点方法就可以了。

甚至可以在一个方法中去调用另一个类中的main()方法,我试过了,注意main()方法的入参就可以了。直接类名.main(入参);//默认是字符串数组

public class Main1 {
public static void main(String[] args) {
new Main2().print();
new Main2().main(args);//注意入参,这个args是该类的main方法入参,也可以从新定义一个新的字符串数组
Main2.main(args);

//也可以定义一个变量
Main2 main2 = new Main2();
main2.print();//和上面一模一样了
}
public void print(){
System.out.println("in main1 class");
}
}

public class Main2 {
public static void main(String[] args) {
new Main2().print();
}
public void print(){
System.out.println("in main2 class");
}
}

打印结果是:
in main2 class
in main2 class
in main2 class
in main2 class追问

我想调用的那个包含main()方法的类..是静态的.. 我就是直接 类名.mian(args) 去调用的..为什么提示我说args cannot be resolved. ?还有就是我是在一个没有main()方法的类里调用的.. 我们老师让写一个调用数据库的程序..用GUI去设计..我就想在button响应事件中设置对数据库的调用..达到点击一个按钮..就调用一下数据库里的数据.. 我连接数据库的类里有个main()方法..就不知道怎么在另一个类去调用它了.....

追答

你看一下被调用的main()函数入参是什么样子的,调用出的args属性怎么定义的。有没有问题
我对GUI不是很熟悉,能把调用处的方法和被调用的main()函数粘出来我看看吗?
他是编译不通过,eclipse编译飘红吗?

追问

额.. 谢谢你~~ 是args的属性问题..我修改好了..但又出现了个新问题..能不能把你QQ告诉我..代码不好往上方..

温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-05-22
main方法是可以存在任何类中的嘛没影响的,只要你不是用里a类去调b类的main方法
第2个回答  2011-05-22
一个程序只会有一个入口!
第3个回答  2011-05-22
一个程序里只能有一个main方法吧
相似回答