Java关键字instanceof

Posted LazyChun

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java关键字instanceof相关的知识,希望对你有一定的参考价值。

Java中的instanceof是用来判断某个实例是不是某个类的实例。
例如:A instanceof B (A为某个实例,B为某个类名)
如果A为B的实例,则:(A instanceof B)==true 反之==false
代码举例:

package JavaKEYWORDS;

class Bird//父类


class BigBird extends Bird//Bird的子类


class LittleBird extends Bird implements BirdFly//Bird的子类加上BirdFly接口


interface BirdFly


public class JavaKWinstanceof 
    public static void main(String[] args) 
        // TODO Auto-generated method stub
        JavaKWinstanceof myThis=new JavaKWinstanceof();
        Bird myBird=new Bird();
        BigBird myBigBird=new BigBird();
        LittleBird myLittleBird=new LittleBird();
        //打印各实例与类之间的关系
        prt(myThis instanceof JavaKWinstanceof);//打印结果:YES   
        prt(myBird instanceof Bird);//打印结果:YES  
        prt(myBigBird instanceof Bird);//打印结果:YES     子类实例出的对象也是父类的实例
        prt(myBird instanceof BigBird);//打印结果:NO      父类实例出的对象不是子类的实例
        prt(myLittleBird instanceof Bird);//打印结果:YES  子类加上其它接口后实例出的对象也是父类的实例
        /*
         * prt(myLittleBird instanceof BigBird);//编译报错  两个没有继承关系的类之间没有instanceof关系      
         * prt(1 instanceof int);//编译错误           
         */
    
    //判断及显示A是否为B的实例
    static void prt(boolean A_is_instanceof_B)
       if(A_is_instanceof_B)
           System.out.println("YES");
       
       else
           System.out.println("NO");
       
    

输出结果:

以上是关于Java关键字instanceof的主要内容,如果未能解决你的问题,请参考以下文章

Java关键字——instanceof

java中isAssignableFrom()方法与instanceof关键字的区别

每日一学--Java关键字instanceof

Java中instanceof关键字的用法总结

Java 中 instanceof 关键字用法

Java基础系列--instanceof关键字