问题描述
今天遇到这样一个问题,我个人感觉是不可以的,因为一个程序如果没有主入口,就没法运行。但是不太确定,如果有知道的话,麻烦告诉我一声,先谢谢了
解决方案
main 方法可以省略 public ? static ? 返回值可以是 int ? 形参可以省略吗? 可以在main 中调用 main 方法吗? 首先Java规定了main()方法必须是公共的,以便于外部程序对主方法的访问,因为程序都是从main()方法起始的,并且main()方法也必须是静态的,首先,为什么要用public: 因为在运行程序时,jvm要调用main方法,但我们都应该知道jvm是一个软件并不是硬件,并且它与main方法所在的包是不同的,所以jvm要调用main方法时,main方法就必须声明为public;否则jvm就无法找到和调用main方法,此时程序就无法运行。 第二,为什么要用static: 因为如果不适用static,就只能创造一个实例去调用main方法,但是jvm并不知道如何去创造一个实例,而你要创造一个实例时,必须要在main方法里头使用new这个关键字,但此时jvm无法调用main方法,所以就无法创造一个实例去调用main方法,所以main方法必须声明为static。很大程度上这是为了安全性的考虑 因为用static修饰的方法或变量是在编译时运行或分配空间的,main用static修饰后,程序就能自动找到程序的main的入口 第三,为什么要用void: 1、main方法根本就不需要返回值; 2、如果你返回了值,也不能看到,那此时jvm也不知道拿这个返回值来干什么,所以就用void。java中main函数的参数args[ ]怎么使用?参考代码:public class Test {public static void main (String[] args) {if (args.length == 0) {System.out.println ("您调用main方法时没有指定任何参数!");return;}System.out.println ("您调用main方法时指定的参数包括:");for (int i = 0; i<args.length; i++) {System.out.println ("参数" + (i+1) + "的值为:" + args[i]);}} } 分类: java
解决方案二:
你说的对了。。。必须有入口函数
解决方案三:
不可以呀,程序必须有入口函数呀