我们如何编辑Java内置类,如Java.util.Scanner?

我们如何编辑Java内置类,如Java.util.Scanner?,java,oop,core,jdk1.6,Java,Oop,Core,Jdk1.6,出于好奇,我想知道是否有一种方法可以在rt.jar中编辑/修改Java核心类。我在互联网上到处搜索,但没有得到相关的答案。我也提到了CovertJavaBook,但我无法理解它 注意:我不想分发我的应用程序。我只是出于好奇才这么做。那个jar中的文件是从.java源文件编译而来的.class文件。您不能那么容易地直接修改二进制文件,但是如果您有一个源代码,例如,您可以编译自己的.class文件并替换,因为JAR基本上是一个包含二进制文件的归档文件 不是最具可伸缩性的方法,但可能是。该jar中的文

出于好奇,我想知道是否有一种方法可以在rt.jar中编辑/修改Java核心类。我在互联网上到处搜索,但没有得到相关的答案。我也提到了CovertJavaBook,但我无法理解它


注意:我不想分发我的应用程序。我只是出于好奇才这么做。

那个jar中的文件是从.java源文件编译而来的.class文件。您不能那么容易地直接修改二进制文件,但是如果您有一个源代码,例如,您可以编译自己的.class文件并替换,因为JAR基本上是一个包含二进制文件的归档文件


不是最具可伸缩性的方法,但可能是。

该jar中的文件是从.java源文件编译而来的.class文件。您不能那么容易地直接修改二进制文件,但是如果您有一个源代码,例如,您可以编译自己的.class文件并替换,因为JAR基本上是一个包含二进制文件的归档文件


不是最具可扩展性的方法,但可能是。更好的方法是扩展这些类并修改特定的方法。这不会影响到您只需要Java提供的类的其他项目

更好的方法是扩展这些类并修改特定的方法。这不会影响到您只需要Java提供的类的其他项目

另一个答案建议修补rt.jar 我相信这并不是最好的方法——除非你的应用程序内容化,并且你的应用程序附带Java,否则你无法有效地分发你的应用程序

要走的路是了解 这应该涵盖大多数合理的用例

普通Java类加载器首先在引导类路径中查找类,然后再检查扩展和应用程序类路径。默认情况下,引导类路径由rt.jar文件和JRE安装提供的一些其他重要jar文件组成。它们提供了标准JavaSE类库中的所有类,以及各种内部实现类

在正常情况下,你不必担心这件事。默认情况下,java、javac等命令将使用适当版本的运行库

有时,有必要通过在标准库中使用类的替代版本来覆盖Java运行时的正常行为。例如,您可能会在运行时库中遇到一个show stopper错误,您无法通过正常方式解决该错误。在这种情况下,可以创建一个包含修改过的类的JAR文件,然后将其添加到启动JVM的引导类路径中


另一个答案建议修补rt.jar 我相信这并不是最好的方法——除非你的应用程序内容化,并且你的应用程序附带Java,否则你无法有效地分发你的应用程序

要走的路是了解 这应该涵盖大多数合理的用例

普通Java类加载器首先在引导类路径中查找类,然后再检查扩展和应用程序类路径。默认情况下,引导类路径由rt.jar文件和JRE安装提供的一些其他重要jar文件组成。它们提供了标准JavaSE类库中的所有类,以及各种内部实现类

在正常情况下,你不必担心这件事。默认情况下,java、javac等命令将使用适当版本的运行库

有时,有必要通过在标准库中使用类的替代版本来覆盖Java运行时的正常行为。例如,您可能会在运行时库中遇到一个show stopper错误,您无法通过正常方式解决该错误。在这种情况下,可以创建一个包含修改过的类的JAR文件,然后将其添加到启动JVM的引导类路径中


技术上是的,这是可能的。但是它涉及到高级的东西,那么为什么您认为您需要修改标准的JDK类呢?您可以下载JDK源代码并使用它:计划修改JDK类的人不应该对在哪里可以找到源代码感到困惑;有没有人可以写下完整的步骤或做一个关于YouTube的教程?技术上是的,这是可能的。但是它涉及到高级的东西,那么为什么您认为您需要修改标准的JDK类呢?您可以下载JDK源代码并使用它:计划修改JDK类的人不应该对在哪里可以找到源代码感到困惑;有人可以写完整的步骤或者做一个关于YouTube的教程吗?我想知道如何修补rt.jar。我不想分发应用程序。我只是想看看它是如何工作的。请写下修补rt.jarSee的步骤@KudinI想知道如何修补rt.j
应收账。我不想分发应用程序。我只是想看看它是如何工作的。请写下修补rt.jarSee的步骤@kudin你说的是rt.jarwell,真的是任何jar你说的是rt.jarwell,真的是任何jar我不是在做项目。我只是想知道有没有办法修补rt.jar我不是在做一个项目。我只是想知道有没有办法修补rt.jar