2013-01-15 164 views
-2

出于好奇,我试图从任何有它的类打印static final int SIZE字段。为了得到“任何拥有它的课程”,我只是试图获得全部课程。但我注意到它总是返回一个长度为0的数组。为什么object.getClass()。getClasses()返回空数组?

的医生说,如果这类对象没有公共成员类或接口

此方法返回长度为0的数组。如果此Class对象表示基本类型,数组类或void,则此方法还将返回长度为0的数组。

但是,对象未列为基元。对象不知何故被认为是无效的呢?

那么,我该如何
- 获取所有类的数组?

- 为什么这不适用于对象?

回答

7

getClasses()方法返回调用此方法的类对象的所有类(在主体内部声明的类)的所有内部数组的数组。对于大多数类,这将始终为零。这是从来没有所有类可用的联盟。 看看类加载器 - 在Java中没有简单的产生所有可用类的方法。您需要使用提供此信息的特定类加载器。

相关问题