Java main方法简单介绍
java 程序的入口:main()方法
public static void main(String[] args)
为什么这样写?
- public修饰符:Java类由JVM调用,为了让JVM可以自由调用这个main()方法,所有使用public修饰符把这个方法暴露出来 。
- static修饰符:JVM调用这个主方法时,不会先创建该主类的对象,然后通过对象来调用该方法,JAVA直接通过类来调用主方法,因此使用static修饰该主方法。
- void返回值:因为主方法被JVM调用,该方法的返回值将返回给JVM,这没有任何意义,因此main()方法没有返回值。
- 字符串数组形参:根据方法的调用规则,谁调用方法,谁负责为形参赋值。也就是说main()方法有JVM调用,即args形参应该由JVM负责赋值。但JVM怎么知道如何为args数组赋值呢?先看下面的程序。
public class TestMain {
public static void main(String[] args) {
//输出args数组的长度
System.out.println(args.length);
//遍历args数组的每个元素
for(String arg : args) {
System.out.println(arg);
}
}
}
在用java TestMain 运行时,我们可以看到程序仅仅输出一个0。
但是将运行命令该为java TestMain Java Spring
时,类名后面紧跟一个或多个字符串(多个字符串之间以空格隔开),JVM就会把这些字符依次赋给args数组元素。
如果某参数本身包含了空格,则应该将该参数用双引号("") 括起来,否者JVM会被这个空格当成参数分隔符,而不是当成参数本身。
例如:java TestMian "Java Spring"