今天遇到这样一个问题,我个人感觉是不可以的,因为一个程序如果没有主入口,就没法运行。但是不太确定,如果有知道的话,麻烦告诉我一声,先谢谢了
3条回答 默认 最新
- long13131462101 2012-03-10 21:17关注
[code="java"]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
[/code]本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报
悬赏问题
- ¥15 多电路系统共用电源的串扰问题
- ¥15 slam rangenet++配置
- ¥15 有没有研究水声通信方面的帮我改俩matlab代码
- ¥15 对于相关问题的求解与代码
- ¥15 ubuntu子系统密码忘记
- ¥15 信号傅里叶变换在matlab上遇到的小问题请求帮助
- ¥15 保护模式-系统加载-段寄存器
- ¥15 电脑桌面设定一个区域禁止鼠标操作
- ¥15 求NPF226060磁芯的详细资料
- ¥15 使用R语言marginaleffects包进行边际效应图绘制