Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/356.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java类加载阶段_Java_Jvm - Fatal编程技术网

Java类加载阶段

Java类加载阶段,java,jvm,Java,Jvm,由于类加载可以分为字节码加载、链接验证、准备、可选解析和初始化,其中哪个阶段负责方法区域中类型结构的分配和实例化,类对象稍后会使用它吗?假设您找到了一个解决方案,在这个解决方案中,这会产生不同,我想不出一个解决方案,那么编写代码不是更好吗,这样就不重要了,因为它可能会以您无法预测的方式发生变化?当然,我明白您的意思。我知道它应该被抽象出来,没有人会在意,不过我想知道:如果是那样的话,我建议读一下代码;您遇到的问题是,在代码运行时,数据结构被重新组织和重组。如果您使用-XX:+printcomil

由于类加载可以分为字节码加载、链接验证、准备、可选解析和初始化,其中哪个阶段负责方法区域中类型结构的分配和实例化,类对象稍后会使用它吗?

假设您找到了一个解决方案,在这个解决方案中,这会产生不同,我想不出一个解决方案,那么编写代码不是更好吗,这样就不重要了,因为它可能会以您无法预测的方式发生变化?当然,我明白您的意思。我知道它应该被抽象出来,没有人会在意,不过我想知道:如果是那样的话,我建议读一下代码;您遇到的问题是,在代码运行时,数据结构被重新组织和重组。如果您使用-XX:+printcomilation,您可以看到,即使在一个简单的程序中,代码也可以在启动后进行优化,然后再进行去优化和重新优化。在像OSGi这样更复杂的情况下,可以删除内联的方法。整个过程是高度动态的,您可能会发现在程序运行的每个阶段都完成了少量的工作。