在上一课中,我们编译了一个小程序并得到了MySolution.class文件,其中包含我们的程序作为字节码。源代码是这样的:
class MySolution {
public static void main(String[] args) {
System.out.println("Hi, command line!");
}
}
现在让我们将这个.class文件传递给 JVM 来执行它。为此,我们将使用java命令,指定包含main方法的类的名称:
D:\temp>java MySolution
我们看到“嗨,命令行!” 在控制台上。
请注意,此处您需要指定的不是文件名 ( MySolution.class ),而是类名 ( MySolution )。
让我们尝试从控制台运行另一个程序。这次我们将使用args数组,main方法的输入参数:
public class MyArgs {
public static void main(String[] args) {
if (args.length == 3) {
System.out.println(args[0].toLowerCase());
System.out.println(args[1].toUpperCase());
System.out.println(args[2].length());
} else {
System.out.println("Three parameters are expected.");
}
}
}
让我们编译...
D:\temp>javac MyArgs.java
并运行:
D:\temp>java MyArgs
输出如下:需要三个参数。
在最近的命令中,在类名之后,您可以指定将在args字符串数组中结束的参数。例如,如果您传递以下参数:
D:\temp>java MyArgs One Two Three
然后 args 数组将是 ["One", "Two", "Three"]
屏幕输出将是:
一二
五
_
五
_
如果您希望参数包含空格,则需要将其用双引号引起来:
D:\temp>java MyArgs "One Two" Three "Four Five Six"
输出:
一
二三
13
二三
13
如果您的程序由单个文件组成,则有一种简单的方法可以让您无需显式编译即可运行它。只需告诉java实用程序您的文件名(包括.java扩展名)和任何参数:
D:\temp>java MyArgs.java param1 param2
此功能是在 Java 11 中添加的,目的是让刚开始学习编程语言的人的生活更轻松。
如需更多详细信息: |
---|
java 命令具有内置帮助。要显示它,请在命令行上运行以下命令:
|
GO TO FULL VERSION