# 课程：仔细研究“Hello World！”应用

> 原文： [https://docs.oracle.com/javase/tutorial/getStarted/application/index.html](https://docs.oracle.com/javase/tutorial/getStarted/application/index.html)

现在你已经看过“Hello World！”应用程序（甚至可能编译并运行它），您可能想知道它是如何工作的。这里再次是它的代码：

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

```

“Hello World！”应用程序由三个主要组件组成：[源代码注释](#COMMENTS)， [`HelloWorldApp`类定义](#CLASS_DEF)， [`main`方法](#MAIN)。以下说明将为您提供对代码的基本了解，但只有在您阅读完本教程的其余部分后，更深层次的含义才会变得明显。

```
/**
 * 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_ */`

The compiler ignores everything from `/*` to `*/`.

`/** _documentation_ */`

This indicates a documentation comment (_doc comment_, for short). The compiler ignores this kind of comment, just like it ignores comments that use `/*` and `*/`. The `javadoc` tool uses doc comments when preparing automatically generated documentation. For more information on `javadoc`, see the [Javadoc™ tool documentation](https://docs.oracle.com/javase/8/docs/technotes/guides/javadoc/index.html) .

`// _text_`

The compiler ignores everything from `//` to the end of the line.

```
/**
 * 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 章详细讨论了类。现在，知道每个应用程序都以类定义开头就足够了。

```
/**
 * 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`和`static`可以按任意顺序编写（`public static`或`static public`），但惯例是使用`public static`，如上所示。您可以根据需要为参数命名，但大多数程序员选择“args”或“argv”。

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

`main`方法接受单个参数：`String`类型的元素数组。

```
public static void main(String[] args)

```

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

```
java MyApp arg1 arg2

```

数组中的每个字符串称为 _ 命令行参数 _。命令行参数允许用户影响应用程序的操作，而无需重新编译它。例如，排序程序可能允许用户使用此命令行参数指定数据按降序排序：

```
-descending

```

“Hello World！”应用程序忽略其命令行参数，但您应该意识到这样的参数确实存在。

最后，行：

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

```

使用核心库中的`System`类打印“Hello World！”消息到标准输出。在本教程的其余部分中将讨论该库的一部分（也称为“应用程序编程接口”或“API”）。