为了账号安全,请及时绑定邮箱和手机立即绑定

Java中的main函数到底有什么功能呢?没有main函数其他都不能执行吗?

Java中的main函数到底有什么功能呢?没有main函数其他都不能执行吗?

慕斯卡1072078 2017-03-26 14:42:42
查看完整描述

7 回答

已采纳
?
尧叔

TA贡献77条经验 获得超201个赞

main()方法的声明为:public static void main(String args[])。必须这么定义,这是程序的入口,Java的规范。

为什么要这么定义,和JVM的运行有关系。

当一个类中有main()方法,执行命令“java 类名”则会启动虚拟机执行该类中的main方法。 

由于JVM在运行这个Java应用程序的时候,首先会调用main方法,调用时不实例化这个类的对象,而是通过类名直接调用因此需要是限制为public static。

对于java中的main方法,jvm有限制,不能有返回值,因此返回值类型为void。

main方法中还有一个输入参数,类型为String[],这个也是java的规范,main()方法中必须有一个入参,类细必须String[],至于字符串数组的名字,这个是可以自己设定的,根据习惯,这个字符串数组的名字一般和sun java规范范例中mian参数名保持一致,取名为args。 

因此,main()方法定义必须是:“public static void main(String 字符串数组参数名[])”。

说到static关键字还有另外一种Hello Wordld:

public class HelloWorld2 { 
    static { 
        System.out.println("Hello Wordld!"); 
    } 
    public static void main(String args[]){ 
        //退出
        System.exit(0); 
    } 
}

static 类型的代码块会在main方法之前执行。

查看完整回答
1 反对 回复 2017-03-27
?
慕莱坞8592035

TA贡献1条经验 获得超3个赞

main()方法是程序执行的入口,通过main()方法让虚拟机知道你想要做什么事?期间所有static成员都会预加载,没有main()就无法进行下一步操作,就是这样规定的

查看完整回答
3 反对 回复 2017-03-26
?
tamdan

TA贡献1条经验 获得超0个赞

程序入口!程序从这里开始执行!

查看完整回答
反对 回复 2017-03-27
?
______1________

TA贡献2条经验 获得超4个赞

是程序的入口

查看完整回答
反对 回复 2017-03-27
?
肥冰

TA贡献101条经验 获得超60个赞

简单来说是jvm识别程序用的。没有main static方法,块可以运行,在jdk1.7之前允许程序只有static申明的方法运行,1.8如下: public class Test { static{ System.out.println("Hello World!"); System.exit(0); } }
查看完整回答
反对 回复 2017-03-26
?
羽觞丨醉月

TA贡献22条经验 获得超6个赞

java虚拟机是通过main方法来找到你写的程序,再执行的

查看完整回答
反对 回复 2017-03-26
?
朱猪朱猪朱

TA贡献1条经验 获得超0个赞

只会从main函数开始执行 然后调用其他的函数 没有main 程序报错 无法执行
查看完整回答
反对 回复 2017-03-26
  • 7 回答
  • 0 关注
  • 5009 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信