public static void main(String[] args){ }
1、这个函数,我们称之为主函数,它的特殊之处在于:
1、格式是固定的
2、被jvm所识别和调用
2、各组成部分含义:
public:权限必须是最大的
static:不需要对象,直接用主函数所属类名调用即可,例如:在DOS窗口编译执行JAVA程序时,我们输入的是: java 类名,而jvm则会调用 类名.main 方法来执行,所以不需要新建对象。
void:主函数没有具体的返回值。
main:函数名,不是关键字,只是一个jvm识别的固定的名字
String[] args:这是主函数的参数列表,是一个数组类型的参数,而且都是字符串类型,args只是一个参数名。
3、具体示例
class MainDemo
{
public static void main(String[] args)
{
int x = 1;
main(x);
System.out.println("Hello World!");
}
public static void main(int a)
{
System.out.println("a="+a);
}
}
上面的代码中,我们可以看到,有两个main方法,那么这样会不会因为jvm找不到编译入口而造成编译错误呢?其实并不会报错,因为主函数的格式是固定的,所以下面的main方法只能算是一个函数重载,并不能算是主函数。
运行结果