Java入门笔记_JavaTools(转载)
1. Java tool
1.1 runtime interpreter
Java runtime interpreter语法如下:
java Options Classname Arguments
如果类使用了包,那么Classname应包含包的名称。
下面介绍Options的可选取项:
(1) -debug:以deug的模式运行interpreter,它允许也jdb(Java调试器)一起使用;
(2) -checksource:打开interpreter时会检查源文件即.java文件和.class文件的日期,如果.java比.class还要新,那么.class文件会被重新编译;
(3) -classpath:该参数覆盖环境变量CLASSPATH;
(4) -mx x:修改所分配内存的最大值,如-mx –10m;x>1000byte
(5) -ms x:修改初始化内存;x>1000byte
(6) -noasyncgc:关闭垃圾回收线程,即不自动回垃圾,这时可以使用System.gc这个方法来手动回收垃圾;
(7) -noverify:关闭代码的验证功能;
(8) -prof:打开报表功能,该功能对程序的执行进行跟踪,最终形成报表文件,记录所有方法的执行时间,有利于找出程序的瓶颈所在;
(9) -ss x:在java的运行环境中为每个线程配置两个别stack,一个用于Java代码,另一个用于c/c++代码,这里可以-ss用于改变用于c/c++代码的stack大小,如-ss 100k,最小值为1000bytes,默认值为128k;
(10) -oss x:用于修改java代码的stack,默认值为400k
(11) -t:显示程序执行过程
(12) -verbose:每次.class运行时显示相关信息;
(13) -verbosegc:每次垃圾回收时显示相关信息;
(14) -D:允许修改System的属性值
1.2 Compiler
Java编译器的使用语法如下:
javac Options Filename
以下是可选的Options:
(1) -classpath Path:告诉编译器使用覆盖CLASSPATHP这个环境变量,如:
javac -classpath .;\dev\animate\classes;\dev\render\classes A.java
在路径中最好不要出现空格,否则可以出错。
(2) -d Path:告诉编译器将编译后的文件放在Path下;
(3) -g:让编译器为.class文件产生debug表,该表存于.class中;
(4) -nowarn:关闭编译器的警告;
(5) -O:让编译器优化代码;
(6) -verbose:对-nowarn的作用有些相反,它让编译器产生详细的信息;
1.3 Applet Viewer
appletViewer用于查看applet程序,语法如下:
appletViewer Options URL
如: appletViewer test.htm
Options用于说明如何运行appletViewer,目前可用的option是-debug,让applet运行在Java调试器中。
1.4 Javap
Javap是一个反汇编工具,用于反汇编.class文件,显示.class中的数据、方法等,语法如下:
Javap –options classname:如 javap HelloWorld
可以使用javap –help查看javap支持的options,比较简单,这里不再介绍。
1.5 Javah
Javah用于产生java的Header及stub文件,用于调用native method。
1.6 JavaDoc
JavaDoc用于为源程序生成文档,该工具一次生成多个html文档。所以最好使用-d选项将这些文档放在指定的目录中。该工具使用语法如下:
javadoc Options FileName
FileName可以是.java文件,也可以是包名。
JavaDoc是根据Java源文件中的注释/*….*/生成文档,在/*…*/中可以包含以下几个特殊的标签,任何标签都是以@开头:
(1) @see Classname指定关联的类文件,JavaDoc根据这个标签生成超链接用于连接到相关的说明文档。这里也可以详细到类中的方法,如classname.methodname(也可以是classname#methodname);
(2) @version Version:指定版本号;
(3) @author AuthorName:指定作者
这述这些标签连同/*….*/下面应紧跟着类定义,如:
/**
* A class for modeling precious gems.
*
* @see Object
* @see gemology.Rock
* @version 2005
* @author JinJianXin
*/
class Gem extends Rock {
// class definition
}
以下标签主要用于对方法的说明:
(1) @param ParamName Description
(2) @return Description
(3) @exception classname descripton(目前好像使用@thows)