gpt4 book ai didi

java - Object 类是如何生成的?

转载 作者:行者123 更新时间:2023-11-30 09:32:07 25 4
gpt4 key购买 nike

我只是想知道 java.lang.Object、java.lang.String 等类(在 Oracle 提供的 rt.jar 中)是如何从 .java 源文件生成的。我认为,他们的 javac 不可能编译它们。

我尝试编译包含“class Dummy{}”的 Dummy.java

lab@labb:~/Documents$ set PATH=.:$JAVA_HOME/bin

lab@labb:~/Documents$ set CLASSPATH=.

lab@labb:~/Documents$ javac -verbose Dummy.java

[开始解析 RegularFileObject[Dummy.java]]

[解析完成 12ms]

[源文件的搜索路径:.]

[类文件的搜索路径:/usr/lib/jvm/java-7-oracle/jre/lib/resources.jar,/usr/lib/jvm/java-7-oracle/jre/lib/rt。 jar,/usr/lib/jvm/java-7-oracle/jre/lib/sunrsasign.jar,/usr/lib/jvm/java-7-oracle/jre/lib/jsse.jar,/usr/lib/jvm/java-7-oracle/jre/lib/jce.jar,/usr/lib/jvm/java-7-oracle/jre/lib/charsets.jar,/usr/lib/jvm/java-7-oracle/jre/classes,/usr/lib/jvm/java-7-oracle/jre/lib/ext/sunpkcs11.jar,/usr/lib/jvm/java-7-oracle/jre/lib/ext/dnsns.jar,/usr/lib/jvm/java-7-oracle/jre/lib/ext/zipfs.jar,/usr/lib/jvm/java-7-oracle/jre/lib/ext/localedata.jar,/usr/lib/jvm/java-7-oracle/jre/lib/ext/sunec.jar,/usr/lib/jvm/java-7-oracle/jre/lib/ext/sunjce_provider.jar,.]

[加载 ZipFileIndexFileObject[/usr/lib/jvm/java-7-oracle/lib/ct.sym(META-INF/sym/rt.jar/java/lang/Object.class )]]

[检查假人]

[加载 ZipFileIndexFileObject[/usr/lib/jvm/java-7-oracle/lib/ct.sym(META-INF/sym/rt.jar/java/lang/AutoCloseable.class )]]

[写了 RegularFileObject[Dummy.class]][总计 131 毫秒]

最佳答案

所有类都可以表示为 Java 代码(如您在此处看到的:http://www.docjar.com/docs/api/java/lang/package-index.html)并由 javac 编译。 Object 是一种特殊情况,因为当由 VM 加载时,它不会获得父类(super class)。

关于java - Object 类是如何生成的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12622690/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com