2.2 JDK内置工具
Java程序需要运行环境的支持,同时编译、解释Java程序,以及执行Java应用程序和Java小程序也需要必要的工具,本节重点讲解JDK中包含的5种常用工具,即Javac.exe、Java.exe、Javadoc.exe、Javap.exe和jdb。在JDK中还集成了Java虚拟机(JVM),JVM提供了Java程序的运行环境,它负责解释.class文件(Java源程序经过编译后的文件),并提交给机器执行。
注意 这里对JVM不再做过多的说明,读者只要知道它的作用就足够了。
2.2.1 JDK常用工具
JDK是一个开发工具集合,作为实用程序,工具库有5种主要程序。
1)Javac:Java编译器,将Java源代码转换为字节码(生成与源文件名同名的.class文件)。
2)Java:Java解释器,执行Java源程序的字节码。
3)Javadoc:依据Java源程序和说明语句生成各种HTML文档。
4)Javap:Java反汇编器,显示编译类文件中可访问的功能和数据,显示字节码的含义。
5)jdb:Java调试器,可以逐行地执行程序、设置断点和检查变量。
2.2.2 JDK常用工具的使用实例
2.2.1节已经详细介绍了各种实用工具的含义,这里就依次介绍如何使用这些工具。
Javac和Java工具将在2.3节通过一个Java应用程序详细说明其用法。这里介绍2.2.1节所列的其他工具的使用,借用2.3节中的Java应用程序MyFirstJavaProgram.java。
图2-15说明如何使用Javadoc。
图2-15 使用Javadoc
说明 这里借用了2.3节中的MyFirstJavaProgram.java源程序,在图2-15中可以清楚地看到Javadoc工具的执行过程,首先是加载源文件MyFirstJavaProgram.java,创建相关Javadoc信息,然后产生各种html文件,这些文件保存在执行Javadoc命令的当前目录下。至于文件内容,读者只要自己实践一次,打开观察一下就很清楚了,这里不再做过多介绍。
图2-16为在D盘根目录下通过各种Javadoc生成的html文件。图2-17说明如何使用Javap。图2-18说明如何使用jdb。
图2-16 Javadoc生成的各种html文件
图2-17 使用Javap
图2-18 使用jdb
说明 这里使用Javap反编译MyFirstJavaProgram.class(源程序可参见2.3节的代码)文件,反编译的结果是该类提供的可访问的方法和属性。这里可访问是指具有public访问权限的方法或静态属性,如在MyFirstJavaProgram.java源文件中,有一个具有public访问权限的main()方法,同时Java默认的构造函数也具有public访问权限,所以这些都可以通过反编译工具Javap体现出来。
本节详细介绍了JDK的几种常用工具,读者一定要用心体会,自己操作一遍,就可以很快掌握这些工具的用法,尤其是Javac.exe和Java.exe,它们是最常用的两种工具,在2.3节有具体的操作实例,读者可以参考。随着学习的深入,还会附带介绍其他工具(如jar打包工具等),对于初学者,首先掌握本节介绍的基本工具是最重要的,这样不会耽误下面的学习内容,同时为深入学习JDK的其他工具打下良好的基础。
2.2.3 Java应用程序的发布工具
jar文件被打包成ZIP文件格式,所以可以使用jar工具实现压缩和解压缩数据。jar工具可以实现应用程序的发布,把应用程序所需要的资源(如类、视频、音频、图片等)打包成.jar文件,该文件具有跨平台特性,可以在任何运行虚拟机的操作系统平台上执行。
jar工具是JDK的一部分,jar命令将启动打包工具软件,可以根据自己的需要调用不同的参数实现资源文件打包。表2-1为jar工具的操作命令格式和功能。
表2-1 jar工具的操作命令和功能列表