javac 和 javadoc 工具使用两种不同方式使用类文件。
象其它 Java 应用程序一样,javac 和 javadoc 必须加载多种类文件才能运行。
要处理它们操作的源代码,javac 和 javadoc 必须获得源代码中所用对象类型的信息。
用来解析源代码引用的类文件大部分和用来运行 javac 和 javadoc 的类文件相同,但有重要的一些例外:
javac 和 javadoc 经常解析对与 javac 或 javadoc 的实现无关的类和接口的引用。有关被引用的用户类和接口的信息可能以类文件、源代码文件或二者结合起来的形式存在。
tools.jar 中的工具类仅用来运行 javac 和 javadoc。工具类不用来解析源代码引用,除非 tool.jar 在用户类路径中。
程序员可能要用另一种 Java 平台实现解析自举类或扩展类引用。利用 -bootclasspath 和 -extdirs 选项,javac 和 javadoc 都可以支持这种操作。使用这些选项不会修改用来运行 javac 或 javadoc 工具本身的类文件集。
如果在类文件和源文件中定义了被引用的类,则 javadoc 通常使用源文件(javadoc 不编译源文件)。同样情况下,javac 使用类文件,但会自动重新编译它认为过期的类文件。自动重新编译的规则将在 javac 文档(Windows 或 Solaris)中介绍。
缺省情况下,javac 和 javadoc 在用户类路径中搜索类文件和源代码文件。如果指定了 -sourcepath 选项,则 javac 和 javadoc 仅搜索指定的源文件路径。
类加载和安全策略
类或接口必须用类加载器加载后才能使用。对特定类加载器的使用确定了与类加载器关联的安全策略。
文章来源于领测软件测试网 https://www.ltesting.net/