我們使用反射爲用戶定義的類員工爲:JVM如何存儲一個類的元信息?
Employee e = new Employee();
Class c = e.getClass();
按我的知識首先JVM裝載Employee類的字節碼,那麼它也創造Class.class的對象爲每個加載的類(類員工在這裏)。在Class.class的對象中,JVM存儲關於最近加載的類的元信息。
類的元信息是「方法名稱」,「字段名稱」等。這些類型的類,如「Method」,「Field」等在java.lang.reflect包中定義。
我看到了Class.java的代碼。我在Class.class中找到了返回對象或這些類型的對象數組的方法,例如「Method」,「Field」等。但Class.class中沒有類型爲「Method」,「Field」等的字段
如果我上面的說法不對,請讓我正確。如果上面的陳述沒有錯,那麼我有以下懷疑: 1)。在Class.class的哪個字段中存儲有關類的各種信息? 2)。 Employee的JVM對象的內存區域和Class.class的對象存儲在哪個區域? 3)。 Employee的JVM字節碼的存儲區和Class.class的字節碼存儲在哪個區域?
爲什麼對你很重要? – Holger