Class-isAssignableFrom()使用

2018-05-22  本文已影响0人  sjandroid

isAssignableFrom(Class<?> c)


demo

        public static void main(String[] args){
        System.out.println(String.class.isAssignableFrom(Object.class));
        System.out.println(Object.class.isAssignableFrom(String.class));

        System.out.println("----------------------------------------");
        System.out.println(int.class.isAssignableFrom(int.class));
        System.out.println(int.class.isAssignableFrom(Object.class));
        System.out.println(Object.class.isAssignableFrom(int.class));
        System.out.println(Integer.class.isAssignableFrom(Object.class));
        System.out.println(Object.class.isAssignableFrom(Integer.class));

        System.out.println("----------------------------------------");

        System.out.println(Person.class.isAssignableFrom(Object.class));
        System.out.println(Object.class.isAssignableFrom(Person.class));
        System.out.println(Person.class.isAssignableFrom(Person.class));
        System.out.println(Person.class.isAssignableFrom(Serializable.class));
        System.out.println(Serializable.class.isAssignableFrom(Person.class));
        System.out.println(Person.class.isAssignableFrom(SuperA.class));
        System.out.println(SuperA.class.isAssignableFrom(Person.class));

        System.out.println("----------------------------------------");

        System.out.println(List.class.isAssignableFrom(ArrayList.class));
        System.out.println(ArrayList.class.isAssignableFrom(List.class));
    }

    class Person implements Serializable, A{}

    interface A extends SuperA{}

    interface SuperA{}

log

false
true
======================
true
false
false
false
true
======================
false
true
true
false
true
false
true
=======================
true
false
上一篇 下一篇

猜你喜欢

热点阅读