java如何调用另个程序的main函数

A.java 中如果需要调用 B.java中的main()函数,怎么写?B中会跳出一个小框架,现在出不了..我用B.main(null)调用显然没用。。。。
就是调用另一个程序 不可以吗?

Main方法是用static修饰的,有2种方法可以调用:

1、类名.main(参数);

2、new创建实例,实例.main(参数);

这个地方注意必须传递字符串数组的参数 或者 null !另外举一个用反射机制调用Main方法的例子。

这个类是被调用的main方法类:

Java代码:

public class Run

{

public static void main(String[] args)

{

String str=args[0]+"Hello World";

System.out.println(str);

}

}

下面是调用main方法的类:

Java代码:

public class JobRun

{

public static void main(String[] args)

{

String idStr = "YAya";

try

{

Method method = Run.class.getMethod("main", String[].class);

method.invoke(null, (Object) new String[] { idStr });

}

catch (Exception e)

{

e.printStackTrace();

}

}

}

扩展资料:

main方法是一个特殊的方法,是程序执行的入口,一个Java程序从main方法开始执行。Java虚拟机在执行Java程序之前会事先分配一个主线程,然后在主线程里面执行我们这个main方法。

线程就是一个程序里面不同的执行路径!总之,就记住,Java程序从main方法开始执行,

比如:

public static void main(String[] args) {

System.out.println("nihao");

}

在这里当程序运行的时候,从main方法进来,然后做的第一件事就是System.out.println("nihao");

注意: main方法执行结束,程序也就执行结束了!

参考资料:百度百科-Java

百度百科-main函数

温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2017-11-27
完全可以。比如:
class A{
public static void main(String[] args){
System.out.println("Hello world");
}
}

class B{
public static void main(String[] args){
for(int i=0;i<args.length;i++)
System.out.print(args[i]+" ");
System.out.println();
}
}
public class Test {
public static void main(String[] args){
A.main(null);
B.main(new String[]{"one","two","three"});
}

}
有的IDE,比如Eclipse,会要求你选择运行哪个main。本回答被提问者采纳
第2个回答  2009-06-09
不论是C C++ C# JAVA 还是 VB 等等。。。一个程序只有一个入口即main方法!
所以想要在本程序中调用其他的main方法是不可能的!当然了!如果你的main不是程序入口的而是自己随便写的方法,而方法名叫做main那就另当别论了!随便你怎么用了!

这样说不知道LZ明白了没?
第3个回答  2009-06-09
Java 中 main函数是一个特殊的函数,不能被其他程序调用...
其实需要调用很简单

在B.java中写一个
public static void fname() {
...
}
然后在A中
B.fname();

这样就可以调用了..(当然前提是在A程序中import B)
第4个回答  2009-06-09
一个java程序不可能有两个main函数!
想调用另外一个main函数的话,为什么不把那个main函数变成普通的方法呢,静态的,非静态的随便你怎么用啊!