黑马程序员技术交流社区

标题: 关于instanceof运算符 [打印本页]

作者: 小穿钉    时间: 2015-10-13 19:22
标题: 关于instanceof运算符
   instanceof运算符是JAVA语言特有的运算符。先写代码,最后再说instanceof是做什么用的。

/*
定义一个类A和类B,B 是A的子类,然后通过instanceof来测试A与B的关系
*/

//类A,用于测试,类体为空
class A{}
//B是A的子类,同样B的类体为空
class B{}
//主类,测试instanceof运算符
public class InstanceofTest{
        public static void main(String[] args){
                A a=null;
                B b=null;
                boolean flag;

                flag=a instanceof A;        //a是空对象
                System.out.println("a instanceof A ="+flag);        

                flag=b instanceof B;        //b是空对象
                System.out.println("b instanceof B="+flag);

                a=new B();
                b=new B();

                flag=a instanceof A;        //a是A类型的对象
                System.out.println("a instanceof A="+flag);

                flag=b instanceof B;        //b是B类型的对象
                System.out.println("b instanceof B="+flag);

                flag=b instanceof A;        //b是A类型(的子类型)的对象
                System.out.println("b instanceof A="+flag);
        }
}

运行结果(省略写):false  false  true true true

由上可知,instanceof 可以用来判定对象是否为特定类的一个实例。




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2