一个JAVA工程中可以有多个主类吗?
如题。并请详细解释下。谢谢!
--------------------编程问答--------------------
不可以。原因是。规定如此。
--------------------编程问答--------------------
你可以同事写多个主类
但是只能允许运行其中的一个主类。
--------------------编程问答--------------------
逻辑上行不同,程序都需要一个唯一入口,否则系统都不知道你的程序从哪开始。
--------------------编程问答--------------------
好像不可以吧
--------------------编程问答--------------------
就是这样
--------------------编程问答--------------------
每个class允许存在一个main函数
但是实际执行的,只会是其中一个
如果是java 方式执行,指命令模式 java -cp "*.classpath" MAINCLASSPATH
根据MAINCLASSPATH指定的入口类调用其main函数
如果是jar方式,java -jar MYJAR.jar
则根据jar的mf文件指定的入口类调用main函数
--------------------编程问答--------------------
可以有多个主类,但是不能够相互引用。并且运行时只能选择一个作为入口
--------------------编程问答--------------------
运行时,只有一个程序的入口。
你要干嘛?同时执行多个任务?
--------------------编程问答--------------------
LZ 十分确定。。我做的项目就是这样的
--------------------编程问答--------------------
不可以了!
--------------------编程问答--------------------
好多打酱油的。
以及好多乱说的。
在.JAVA文件中可以有很多个类。
但是只能有一个类可以定义成public的。
而且在编译之后,运行的时候看你运行的哪个.CLASS文件。
每个类对应一个CLASS文件。
--------------------编程问答--------------------
--------------------编程问答--------------------
你说的主类是什么? public的类? public带main方法的类? 一个工程中当然可以有很多public的类!!!
--------------------编程问答--------------------
问题不太清楚,建议说清楚些。
一个工程里面,只能有一个带main方法的类,这就是程序的入口。
--------------------编程问答--------------------
根据你问的java工程,一个工程中可以有N个带main的类,但当你要运行整个工程时,却只能指定一个类作为入口;一般大家都叫这个类为当前工程的主类,也即只能有一个
--------------------编程问答--------------------
main() 是程序的入口,故只能有一个类中含有main()方法,并且其他的类都会调用含有main()方法的类,故需要定义为public!
--------------------编程问答--------------------
不可以,只能运行一个main()方法作为程序的入口
--------------------编程问答--------------------
就是这么回事
--------------------编程问答--------------------
可以有多个类
只能有一个是public的
--------------------编程问答--------------------
一个工程类,当然可以有多个主类,但是一个主类中只能有一个public,而且只能运行一个。
--------------------编程问答--------------------
App程序每次只能从一个main方法启动. 但你可以为每个类Class定义一个main方法.在启动程序时可通过调用不同的main执行不同的操作!
--------------------编程问答--------------------
完全可以
--------------------编程问答--------------------
不可以
--------------------编程问答--------------------
可以的 看你参数运行的那个
--------------------编程问答--------------------
谢谢大家,应该是可写多个主类,但是只能允许运行其中的一个主类,最近读THINK IN JAVA,上面提到过。呵呵,还是读书少。。。。。。
--------------------编程问答--------------------
的确如此
--------------------编程问答--------------------
无所谓,如果你愿意,你可以为你的每一个public类写一个main方法;但运行时你要为你的工程指定入口,也就是从哪个main方法开始运行。还有,你的工程入口main方法中也可以通过反射调用其它的main方法
--------------------编程问答--------------------
不可以相互引用就说不通了,你也可以去main方法也只是一个方法,你完全可以在一个主类中调用另一个主类的main方法
--------------------编程问答--------------------
可以存在多个类,但是只能有一个主函数。也就是main
--------------------编程问答--------------------
你的工程具体指什么?
如果,是一个普通测试用的,可以有多个主类,每个public类中都有一个main方法。
如果,是一个项目,也可以有多个主类(public class),但是只能有一个入口,即main方法~后期,你可以导出成为jar包。你试想如果有多个入口,那程序要怎么调用呢?所以啦。。。
--------------------编程问答--------------------
可以。
你将项目打成可运行jar文件时,会让你选择主类。
--------------------编程问答--------------------
不可以那样滴
--------------------编程问答--------------------
貌视不可以的
--------------------编程问答--------------------
一个工程可以有多个入口 , 一个进程只能选择一个入口
--------------------编程问答--------------------
其实一个java工程中可以有多个带main方法的类,不过只有一个main方法运行时会用到,其他的main方法可以用来测试是用!
--------------------编程问答--------------------
不可以。原因是。规定如此。
--------------------编程问答--------------------
我靠,不要误人子弟。
--------------------编程问答--------------------
应该是可以存在多个主类,但只有一个主函数
--------------------编程问答--------------------
自己试试不就知道了?

--------------------编程问答--------------------
你知道那你说啊。
那么多星星不是误人子弟来的?
--------------------编程问答--------------------
在java文件中的确可以有多个类,比如内部类,但是只能有一个主类来作为程序的入口,这个主类用public来修饰,其他的类不能用public 来修饰。
--------------------编程问答--------------------
在一个主类里不一样可以执行其他主类....
--------------------编程问答--------------------
main()是程序入口,一个类中只能有一个主方法
--------------------编程问答--------------------
可以写多个主类,但是只能运行一个!
--------------------编程问答--------------------
同意观点
--------------------编程问答--------------------
计算机其实在同一瞬间只能执行同时执行一条命令,看起来程序有那么多功能、那么多代码,其实计算机cpu执行起来是按优先级顺序执行的,并不能同时执行两条或者多条命令,所以给计算机写的程序必须要有一定的规则和顺序,main函数是java语言程序的入口地址,有且只有一个,如果多个main函数的程序存在,计算机执行之后要么是后面的main函数的地址将前面的覆盖掉,到最后只行政一个入口地址,要么若多入口程序真的存在..计算机是不会自己做出选择的,,所以..会死机吧..或者随机执行个入口了... 这样的话写程序就违反了自己写程序的初衷。
--------------------编程问答--------------------
lz说的主类和你说的public类好像不是一回事,你说的这段没啥错但就这个帖子确实误人子弟...
--------------------编程问答--------------------
可以的

--------------------编程问答--------------------
可以有多个主类 但是只有一个程序入口
--------------------编程问答--------------------
我记得用eclipse 可以写很多public 类的,而在一个java文件中就只能有一个public 类了
--------------------编程问答--------------------
一个Java文件中只能有一 个public类
楼主所说的主类是不是类中有public static void main(String[] args){}主函数的偶
因为编译时有几个类便会生成几个class文件,含有主函数的都可以独立运行
所以有多个主类是完全可以的,但是这种 类不可以相互调用,如果调用,那么在执行调用其他所谓主类的类的class文件时,就会出现多个入口虚拟机无法识别而造成错乱,
--------------------编程问答--------------------
好像是这么回事。。。
--------------------编程问答--------------------
我也不是很清楚,所以是来看回帖学习的
--------------------编程问答--------------------
各位啊!题目说的是在一个java工程中 工程!而不是一个文件 看清楚再说嘛!肯定可以有多个主类啊
--------------------编程问答--------------------
刚刚百度了一下 额 我错了 主类是指既有public修饰 也要有main方法的类

--------------------编程问答--------------------
主类?? 你想问的是 声明public 类的问题 还是主方法??
--------------------编程问答--------------------
学习了 都是高手啊
--------------------编程问答--------------------
都是天才...看这个帖子做就完了..
--------------------编程问答--------------------
呵呵,不可以,你可以写多个主类,但是,只能运行一个。
--------------------编程问答--------------------
那是那回事呢????既然高手有不同见解就说出嘛。
--------------------编程问答--------------------
我就不翻译了,省得你又说是抄的,这本来就是抄的,哈哈
--------------------编程问答--------------------
不能说你是误人子弟,只能说你是答非所问
--------------------编程问答--------------------
不能调用就完全说不过去了,main方法他妈的就只是一个方法,你完全可以在一个类的main方法中调用其他类的main方法或者其他方法
--------------------编程问答--------------------
不要想当然的说
--------------------编程问答--------------------
当然不行,应为入口只能有一个
--------------------编程问答--------------------
调用了之后有几个入口?虚拟机要识别哪一个?还有,嘴请放干净点
--------------------编程问答--------------------
class A
{
public static void main(String[] args)
{
System.out.println("Hello World!");
}
}
class B
{
public static void main( String[] args)
{
A a = new A();
String[] s = new String[3];
a.main(s);
}
}
这个可以运行。。。。之前说的是错的,对不起,这些东西需要自己去验证,说话都没有用
--------------------编程问答--------------------
话说,如果main(String[] args)方法是程序的唯一入口的话,楼上的程序入口是哪一个main(String[] args)方法?
--------------------编程问答--------------------
关于你说的多个入口的问题,你都有一个main方法进到了虚拟机了,你还考虑什么入口不入口的问题,就像教室有前后两个门,你都进了教室了,你还关心你从哪个门进来的吗
--------------------编程问答--------------------
不管有多少个main方法, 也不管你怎么去调用, 只有你把它当做入口的那个main才是程序的入口,你不把它当做入口,他就只是一个方法,仅此而已,就像教室有前后两个门,你的目的是要进教室你都进了教室了,你还要去纠结该从哪个门进吗
--------------------编程问答--------------------
我新手,不知道67楼程序的入口是哪一个main()方法,求解,程序如何分辨哪一个main()方法是入口
--------------------编程问答--------------------
可以写多个main方法,不过要指定哪一个,自己试一下嘛~我自己测试的时候经常会写多个main方法,最后在整合在一起
--------------------编程问答--------------------
正解+1
--------------------编程问答--------------------
只能有一个public类 存在 并且与文件名一致
其他的类个数不限
--------------------编程问答--------------------
不知道你说的一个工程里的主类是什么概念,如果是一个可运行的java工程,那么只能用一个类里有main方法,如果是web应用或其他依赖容器的工程,那么可以没有main方法的,写了容器也不会去调用
--------------------编程问答--------------------
好吧,那你给个答案吧?你不误人子弟。
--------------------编程问答--------------------
哪里正解???
其他的主类就不能运行了?报什么错?
--------------------编程问答--------------------
那你觉得答案是什么?
你也没给答案嘛。就知道在哪里说别人说的不对。次奥
--------------------编程问答--------------------