zoukankan      html  css  js  c++  java
  • instanceof, isinstance,isAssignableFrom的区别

    instanceof运算符 只被用于对象引用变量,检查左边的被测试对象 是不是 右边类或接口的 实例化。如果被测对象是null值,则测试结果总是false。 
    形象地:自身实例或子类实例 instanceof 自身类  返回true 
    例: String s=new String("javaisland"); 
          System.out.println(s instanceof String); //true 

    Class类的isInstance(Object obj)方法,obj是被测试的对象,如果obj是调用这个方法的class或接口 的实例,则返回true。这个方法是instanceof运算符的动态等价。 
    形象地:自身类.class.isInstance(自身实例或子类实例)  返回true 
    例:String s=new String("javaisland"); 
          System.out.println(String.class.isInstance(s)); //true 

    Class类的isAssignableFrom(Class cls)方法,如果调用这个方法的class或接口 与 参数cls表示的类或接口相同,或者是参数cls表示的类或接口的父类,则返回true。 
    形象地:自身类.class.isAssignableFrom(自身类或子类.class)  返回true 
    例:System.out.println(ArrayList.class.isAssignableFrom(Object.class));  //false 
          System.out.println(Object.class.isAssignableFrom(ArrayList.class));  //true

  • 相关阅读:
    HDU2586 How far away?(tarjan的LCA)
    You Raise Me Up
    POJ2891 Strange Way to Express Integers(中国剩余定理)
    POJ2142 The Balance(扩展欧几里得)
    HDU 1166模仿大牛写的线段树
    NetWord Dinic
    HDU 1754 线段树裸题
    hdu1394 Minimum Inversion Number
    hdu2795 Billboard
    【完全版】线段树
  • 原文地址:https://www.cnblogs.com/toSeeMyDream/p/6224000.html
Copyright © 2011-2022 走看看