什么是Klass与KlassKlass在JVM中执行热点?
Klass
KlassKlass
据我从介绍Perm生成一文中所了解的,它Klass是Java类的内部表示(假设A),它将保存有关该类结构的基本信息,包括字节码。它将被存储为对象本身。A类的每个对象都有一个指向KlassPermGen中内部表示的指针
A
KlassKlass是Klass类本身的内部表示。为什么KlassKlass需要?它还存储哪些额外信息?
另外,有一个KlassKlass's Klass指向自己的指针,我也不明白。
KlassKlass's
永久生成(又称永久生成)是指存储所有与类相关的信息的位置。有时称为方法区域。
让我们以以下代码为例:
public class Parent { ... }
这里:
new Parent()
Parent
(new Parent()).getClass()
java.lang.Class<Parent>
(new Parent()).getClass().getClass()
java.lang.Class<java.lang.Class>
java.lang.Class
从理论上讲,这条链可以继续下去,但KlassKlassKlass与KlassKlass相同。
简而言之,KlassKlass意味着您将拥有一个java.lang.Class定义其java.lang.Class自身行为的对象。
希望这可以帮助