仔细看看“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注释),编译器会忽略这类注释,就像它会忽略使用/**/的注释一样,javadoc工具在准备自动生成的文档时使用doc注释,有关javadoc的更多信息,请参见javadoc文档™ 工具

// text

编译器从//到行尾忽略所有内容。

HelloWorldApp类定义

下面的从class开始了“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方法

下面以public开始的文本开始了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)

修饰符publicstatic可以以任何顺序(public static或static public)来编写,但是惯例是使用如上所示的public static,你可以任意命名参数,但大多数程序员选择“args”或“argv”。

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

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

public static void main(String[] args)

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

java MyApp arg1 arg2

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

-descending

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

最后一行:

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

使用core库中的System类将“Hello World!”消息打印到标准输出,这个库的一部分(也称为“应用程序编程接口”或“API”)将在本教程的其余部分中讨论。


上一篇:“Hello World!”应用程序
下一篇:常见问题(及其解决方案)

博弈
2.5k 声望1.5k 粉丝

态度决定一切