JAVA运算符 instanceof

来源:互联网 发布:iphone x抢购软件 编辑:程序博客网 时间:2024/06/05 06:05

判断对象object是否为指定类class的实例

例  

boolean result = object instanceof class

当是指定类实例时返回 true 

当不是指定类实例或者object 为null 时返回 false


测试代码

interface A{} class B implements A{   } class C extends B {   }  class instanceoftest {  public static void main(String[] args){     A a=null;     B b=null;     boolean res;           System.out.println("instanceoftest test case 1: ------------------");       res = a instanceof A;        System.out.println("a instanceof A: " + res);              res = b instanceof B;       System.out.println("b instanceof B: " + res);            System.out.println("/ninstanceoftest test case 2: ------------------");        a=new B();     b=new B();          res = a instanceof A;      System.out.println("a instanceof A: " + res);          res = a instanceof B;     System.out.println("a instanceof B: " + res);     res = b instanceof A;     System.out.println("b instanceof A: " + res);          res = b instanceof B;     System.out.println("b instanceof B: " + res);         System.out.println("/ninstanceoftest test case 3: ------------------");     B b2=(C)new C();          res = b2 instanceof A;     System.out.println("b2 instanceof A: " + res);          res = b2 instanceof B;     System.out.println("b2 instanceof B: " + res);          res = b2 instanceof C;     System.out.println("b2 instanceof C: " + res);  }}/*result:instanceoftest test case 1: ------------------a instanceof A: falseb instanceof B: falseinstanceoftest test case 2: ------------------a instanceof A: truea instanceof B: trueb instanceof A: trueb instanceof B: trueinstanceoftest test case 3: ------------------b2 instanceof A: trueb2 instanceof B: trueb2 instanceof C: true*/

0 0