0

这是我在采访中被问到的:

如果一个新方法被添加到 String 类并编译并放入 rt.jar,那么 bootstrap 类加载器会加载它吗?

我回答说它不会加载,但不知道为什么。

请帮助我正确回答和解释。

4

1 回答 1

1

它将被加载。

不仅如此:它甚至不需要在 中rt.jar,如果您将 jar 文件添加到引导类路径(请参阅 参考资料-Xbootclasspath/p:path),那么您甚至可以java.lang.*从其他 jar 文件加载类。

当然是一种违反 JVM 安全性的方法,但是您需要非常深入的访问(rt.jar对 JVM 的命令行参数进行写访问或访问),当您拥有这些时,您可以做的不仅仅是只需更换String.toString().

于 2013-09-18T12:22:20.110 回答