7.1 与用户互动 7.1.1 运行Java程序的参数

7.1 与用户互动

绝大部分程序都需要处理用户动作,包括接收用户的键盘输入、鼠标动作等。因为现在还未涉及图形用户接口(GUI)编程,故本节主要介绍程序如何获得用户的键盘输入

7.1.1 运行Java程序的参数

main()方法的方法签名

public static void main(String[] args){ }

main方法修饰符详解

下面详细讲解main()方法为什么采用这个方法签名。

  1. public修饰符:Java类由JVM调用,为了让JVM可以自由调用这个main()方法,所以需要使用public修饰符把这个方法暴露出来。
  2. static修饰符:JVM直接通过该类来调用主方法,因此使用static修饰该主方法。
  3. void返回值:因为主方法被JVM调用,该方法的返回值将返回给JVM,不会返回给当前类,因此main()方法没有返回值。

main方法的形参由JVM赋值

根据方法调用的规则:谁调用方法,谁负责为形参赋值也就是说, main()方法由JVM调用,即main方法的字符串数组形参args应该由JVM负责赋值。

JVM根据命令行参数给main方法的字符串形参赋值

  • 如果没有运行程序是没有给出命令行参数,则main方法的字符串数组形参的长度为0是个空数组.
  • 命令行参数以空格作为参数的分隔符
    • 如果某个参数本身有空格,则需要用双引号将这个参数包裹起来.
    • 否则JVM会把这个空格当成参数分隔符.