2013-01-15 163 views
-2

出於好奇,我試圖從任何有它的類打印static final int SIZE字段。爲了得到「任何擁有它的課程」,我只是試圖獲得全部課程。但我注意到它總是返回一個長度爲0的數組。爲什麼object.getClass()。getClasses()返回空數組?

的醫生說,如果這類對象沒有公共成員類或接口

此方法返回長度爲0的數組。如果此Class對象表示基本類型,數組類或void,則此方法還將返回長度爲0的數組。

但是,對象未列爲基元。對象不知何故被認爲是無效的呢?

那麼,我該如何
- 獲取所有類的數組?

- 爲什麼這不適用於對象?

回答

7

getClasses()方法返回調用此方法的類對象的所有類(在主體內部聲明的類)的所有內部數組的數組。對於大多數類,這將始終爲零。這是從來沒有所有類可用的聯盟。 看看類加載器 - 在Java中沒有簡單的產生所有可用類的方法。您需要使用提供此信息的特定類加載器。

相關問題