出于好奇,我试图从任何拥有它的类中打印static final int SIZE
字段。要获得“任何拥有它的类”,我只是试图获得所有类。但我注意到它总是返回一个长度为0的数组。
医生说
如果此Class对象没有公共成员类或接口,则此方法返回长度为0的数组。如果此Class对象表示基本类型,数组类或void
,则此方法还返回长度为0的数组
但是Object没有列为基元。对象在某种程度上被认为是无效的吗?
那么,我该怎么做
- 获取所有课程的数组?
和
- 为什么这对Object不起作用?
答案 0 :(得分:7)
getClasses()
方法返回调用此方法的类对象的所有内部类(在主体内声明的类)的数组。对于大多数课程,这将始终为零。它永远不会是所有类的联合。
看一下类加载器 - 在Java中,没有方法可以简单地生成所有可用的类。您需要使用提供此信息的特定类加载器。