在我们日常的应用中,总是会出现关于java的各式各样的问题。今天主要为大家概述下javac的说明有哪些,以及它的联编选项包含哪些内容。
首先,关于javac的说明,我们可以知道的是,有两种方法可以将源代码文件名传递给javac:
1.如果源文件数量少,在命令行上列出文件名即可;2.如果源文件数量多,则将源文件名列在一个文件中,名称间用空格或回车行来进行分隔。然后在javac 命令行中使用该列表文件名,文件名前冠以@字符。
另外,源代码文件名称必须含有.java后缀,类文件名称必须含有.class后缀,源文件和类文件都必须有识别该类的根名。比如,名为MyClass的类将写在名为MyClass.java的源文件中,并被编译为字节码类文件MyClass.class。
还需要说明的是,内部类定义产生附加的类文件。这些类文件的名称将内部类和外部类的名称结合在一起,例如MyClass$MyInnerClass.class。
同时,应当将源文件安排在反映其包树结构的目录树中。例如,如果将所有的源文件放在/workspace中,那么com.mysoft.mypack.MyClass的代码应该在\workspace\com\mysoft\mypack\MyClass.java中。
在缺省情况下,编译器将每个类文件与其源文件放在同一目录中。可用-d选项指定其它目标目录。工具读取用java编程语言编写的类和接口定义,并将它们编译成字节码类文件。
以下是它的联编选项所包含的内容:
在缺省情况下,类是根据与javac一起发行的JDK自举类和扩展类来编译。但javac也支持联编,在联编中,类是根据其它java平台实现的自举类和扩展类来进行编译的。联编时,-bootclasspath和-extdirs的使用很重要,可以参考下面的联编程序示例。
1.-target 版本,生成将在指定版本的虚拟机上运行的类文件。缺省情况下生成与1.1和1.2版本的虚拟机都兼容的类文件。JDK1.2中的javac所支持的版本有:
1.1:保证所产生的类文件与1.1和1.2版的虚拟机兼容。这是缺省状态。
1.2:生成的类文件可在1.2版的虚拟机上运行,但不能在1.1版的虚拟机上运行。
2.-bootclasspath自举类路径,根据指定的自举类集进行联编。和用户类路径一样,自举类路径项用分号(;)进行分隔,它们可以是目录、JAR归档文件或 ZIP归档文件。
3.-extdirs目录,根据指定的扩展目录进行联编。目录是以分号分隔的目录列表。在指定目录的每个JAR归档文件中查找类文件。
以上就是关于javac的说明的含义以及它的联编选项所包含的内容。想要了解更多java基础,敬请关注奇Q工具网。
推荐阅读: