java - boolean.isInstance(true) 是假的?

标签 java class reflection field instance

问题

boolean 字段的类对象不会将其他 boolean 值识别为实例。

代码

public class Test {
    public boolean b;
    public static void main(String[] args) {
        System.out.println(Test.class.getFields()[0].getType().isInstance(true));
    }
}

结果

false

最佳答案

方法是isInstance(Object) 所以

x.isInstance(true)

相同
x.isInstance(Boolean.TRUE);

并且 Boolean.class 不是 boolean.class 的子类。

注意:基元没有getClass() 方法,或任何与此相关的方法。当您可以将其用作对象时,它已被装箱。

关于java - boolean.isInstance(true) 是假的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35961067/

相关文章:

从 Artifactory 下载文件的 Java 代码不起作用

c++ - 在类中使用 ifstream

c++ - 访问类中指针的 vector

java - 如何计算具有3个坐标点的类的两个对象之间的距离?

c# - 是否可以在属性的构造函数中获取有关类成员的元数据

java - 在 Vista 32 位和 Win 7 64 位中访问 %ProgramFiles(x86)% 的统一方式

java - 如何检查字符是否正确

java - 如何在AspectJ中提供动态切入点?

java - 具有嵌套对象的对象的两个实例与动态比较(选项/规则/参数)

c# - 如何从从另一个文件夹中加载的程序集中获取类型?