Java main()方法

pk10开户推出辅导班啦,包括「C语言辅导班、C++辅导班、算法/数据结构辅导班」,全部都是一对一教学:一对一辅导 + 一对一答疑 + 布置作业 + 项目实践 + 永久学习。QQ在线,随时响应!

main() 方法定义的语法如下所示。
public static void main(String[] args)
{
    //方法体
}

其中,使用 main() 方法时应该注意如下几点:
  • 访问控制权限是公有的(public)。
  • main() 方法是静态的。如果要在 main() 方法中调用本类中的其他方法,则该方法也必须是静态的,否则需要先创建本类的实例对象,然后再通过对象调用成员方法。
  • main() 方法没有返回值,只能使用 void。
  • main() 方法具有一个字符串数组参数,用来接收执行 Java 程序的命令行参数。命令行参数作为字符串,按照顺序依次对应字符串数组中的元素。
  • 除了形参变量名可以任意设置以外,main() 方法中的其他内容都是固定不变的。

下面的示例代码演示了如何在 main() 方法中调用本类的静态和非静态方法。
public class Student
{
    public void Speak1()
    {
        System.out.println("你好!");
    }
    public static void Speak2()
    {
        System.out.println("Java!");
    }
    public static void main(String[] args)
    {
        //Speak1();    //错误调用
        Speak2();    //可以直接调用静态方法Speak2()
        Student t=new Student();
        t.Speak1();    //调用非静态方法,需要通过类的对象来调用
    }
}

例 1

创建一个 Java 程序,编写代码实现程序执行时统计传递参数的数量及每个参数值。示例代码如下:
public class TestMain
{
    //@param args
    public static void main(String[] args)
    {
        //TODO Auto-generated method stub
        int n=args.length;    //获取参数数量
        System.out.println("一共有 "+n+" 个参数");
        if(n>0)
        {   
            //判断参数个数是否大于0
            for(int i=0;i<n;i++)
            {
                System.out.println(args[i]);
            }
        }
    }
}

(1) 将代码保存到 TestMain.java 文件中,然后用如下 Java 命令对程序进行编译:
javac TestMain.java

(2) 程序编译成功后用如下 Java 命令执行 Test 程序:
java TestMain 参数列表    //多个之间用空格隔开

这里使用如下三个语句执行程序:
java TestMain
java TestMain apple banana
java TestMain one two three four five six

(3) 执行结果如下所示:
D:2HHTShuGaoch08bin>java TestMain
一共有 0 个参数
D:2HHTShuGaoch08bin>java TestMain apple banana
一共有 2 个参数
apple
banana
D:ZHHTShuGaoch08bin>java TestMain one two three four five six
一共有 6 个参数 one
three
four
five
six
D:ZHHTShuGaoch08bin>
由此可见,main() 方法可以以字符串的形式接收命令行参数,然后在方法体内进行处理。