instanceof用法

instanceof运算符是用来在运行时指出对象是否是特定类的一个实例。

instanceof通过返回一个布尔值来指出,这个对象是否是这个特定类或者是它的子类的一个实例。
用法:
result = object instanceof class
参数:
Result:布尔类型。
Object:必选项。任意对象表达式。
Class:必选项。任意已定义的对象类。
说明:
如果object是class的一个实例,则 instanceof运算符返回true。如果object不是指定类的一个实例或者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;

res = a instanceof A;
System.out.println("-----------------part1------------------------");
System.out.println("a instanceof A: " + res); // 输出结果为false
res = b instanceof B;
System.out.println("b instanceof B: " + res); // 输出结果为false

a=new B();
b=new B();
res = a instanceof A;
System.out.println("-----------------part2------------------------");
System.out.println("a instanceof A: " + res); // 输出结果为true
res = a instanceof B;
System.out.println("a instanceof B: " + res); // 输出结果为true
res = b instanceof A;
System.out.println("b instanceof A: " + res); // 输出结果为true
res = b instanceof B;
System.out.println("b instanceof B: " + res); // 输出结果为true
System.out.println("-----------------part3------------------------");
B b2=(C)new C();
res = b2 instanceof A;
System.out.println("b2 instanceof A: " + res); // 输出结果为true
res = b2 instanceof B;
System.out.println("b2 instanceof B: " + res); // 输出结果为true
res = b2 instanceof C;
System.out.println("b2 instanceof C: " + res); // 输出结果为true
}
}

 

posted on 2015-08-05 15:58  零度CC  阅读(286)  评论(0)    收藏  举报

导航