文档

Java™ 教程-Java Tutorials 中文版
仔细看看 "Hello World!" 应用
Trail: Getting Started

课程:仔细看看 "Hello World!" 应用

现在你已经看到了 "Hello World!" 应用程序(甚至可能编译并运行它),你可能想知道它是如何工作的。这里又是它的代码:


class HelloWorldApp {
    public static void main(String[] args) {
        System.out.println("Hello World!"); // Display the string.
    }
}

"Hello World!" 应用程序由三个主要部分组成:源码注释HelloWorldApp 类定义main 方法。以下说明将为你提供对代码的基本理解,但深层含义只有在完成本教程的其余部分的阅读后才会显现出来。

源码注释

以下粗体文本定义了 "Hello World!" 应用的 注释

/**
 * The HelloWorldApp class implements an application that
 * simply prints "Hello World!" to standard output.
 */
class HelloWorldApp {
    public static void main(String[] args) {
        System.out.println("Hello World!"); // Display the string.
    }
}

注释被编译器忽略,但对其他程序员很有用。Java 编程语言支持三种注释:

/* text */
编译器忽略从 /**/ 的所有内容。
/** documentation */
这表示文档注释(简称 doc comment)。编译器会忽略这种注释,就像忽略使用 /**/ 的注释一样。准备自动生成的文档时,javadoc 工具使用文档注释。有关 javadoc 的更多信息,请参阅 Javadoc™ tool documentation
// text
编译器会忽略 // 到行尾的所有内容。

HelloWorldApp 类定义

以下粗体文本开始 "Hello World!" 应用的类定义块:

/**
 * The HelloWorldApp class implements an application that
 * simply displays "Hello World!" to the standard output.
 */
class HelloWorldApp {
    public static void main(String[] args) {
        System.out.println("Hello World!"); // Display the string.
    }
}

如上所示,类定义的最基本形式是:

class name {
    . . .
}

关键字 class 开始名为 name 的类的类定义,并且每个类的代码出现在上面用粗体标记的开头和结尾大括号之间。第 2 章总体介绍了类,第 4 章详细讨论了类。现在知道每个应用程序都以类定义开始就足够了。

main 方法

以下粗体文本开始定义 main 方法:

/**
 * The HelloWorldApp class implements an application that
 * simply displays "Hello World!" to the standard output.
 */
class HelloWorldApp {
    public static void main(String[] args) {
        System.out.println("Hello World!"); //Display the string.
    }
}

在 Java 编程语言中,每个应用程序都必须包含一个 main 方法,其签名为:

public static void main(String[] args)

可以按任意顺序(public staticstatic public)编写修饰符 publicstatic,但规范就是使用 public static,如上所示。你可以根据需要命名参数,但大多数程序员选择 "args" 或 "argv"。

main 方法类似于 C 和 C ++中的 main 函数;它是你的应用程序的入口点,随后将调用你的程序所需的所有其他方法。

main 方法接受一个参数:String 类型元素的数组。

public static void main(String[] args)

该数组是运行时系统将信息传递给应用程序的机制。例如:

java MyApp arg1 arg2

数组中的每个字符串都称为 command-line argument。命令行参数允许用户在不重新编译的情况下影响应用程序的操作。例如,排序程序可能允许用户使用此命令行参数指定数据按降序排序:

-descending

"Hello World!" 应用程序会忽略它的命令行参数,但你应该意识到这样的参数确实存在的事实。

最后,该行:

System.out.println("Hello World!");

使用核心库中的 System 类来打印 "Hello World!" 消息发送到标准输出。这个库的一部分(也称为 "应用程序编程接口" 或 "API")将在本教程的剩余部分中讨论。


Previous page: Previous Lesson
Next page: Questions and Exercises: Getting Started