Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/387.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
确定java.lang.Class对象是否表示类_Java_Reflection - Fatal编程技术网

确定java.lang.Class对象是否表示类

确定java.lang.Class对象是否表示类,java,reflection,Java,Reflection,如何确定java.lang.Class对象是否表示类 其他java类型可以通过以下方法确定:, . 我缺少类类型的方法。我认为这是一个消除问题: if (!c.isEnum() && !c.isInterface() && !c.isArray() && !c.isAnnotation() && !c.isPrimitive()) { // It's a class } …这不是很令人满意,因为当新的特征添加到java(比

如何确定java.lang.Class对象是否表示类

其他java类型可以通过以下方法确定:,
. 我缺少类类型的方法。

我认为这是一个消除问题:

if (!c.isEnum() && !c.isInterface() && !c.isArray() && !c.isAnnotation() && !c.isPrimitive()) {
    // It's a class
}

…这不是很令人满意,因为当新的特征添加到java(比如枚举、注释、……)时,你必须重新访问这个定义。

如果是一个类,我们应该确保它是一个顶级类,丢弃内部的、本地的、匿名的。@安德鲁托比尔科:这取决于OP想考虑什么样的类。成员类、本地类和匿名类都是类。:-)“…这不是很令人满意,因为在Java中添加新特性(如枚举、注释等)时,您必须重新访问该定义。”。对。但另一方面,你可能无论如何都需要这样做。。。这样,您的代码就可以处理这个新的Java特性了。您可以通过使用标记接口使您的世界变得更简单,并对此进行检查。当您搜索某个对象时,您将搜索比类更具体的对象。