Java中isAssignableFrom的用法详解
来源:爱站网时间:2020-06-15编辑:网友分享
在查看开放源代码时,通常要使用isAssignableFrom,而他们的参数接口的类是否一致呢?别着急,下面是Java中isAssignableFrom的用法详解,大家都清楚吗?跟着爱站技术频道来了解清楚吧!
在查看开放源代码时,通常要使用isAssignableFrom,而他们的参数接口的类是否一致呢?别着急,下面是Java中isAssignableFrom的用法详解,大家都清楚吗?跟着爱站技术频道来了解清楚吧!
1. class2是不是class1的子类或者子接口
2. Object是所有类的父类
一个例子搞定:
package com.auuzee.test1;
class A {
}
class B extends A {
}
public class Test1 {
public static void main(String[] args) {
A a = new A();
B b = new B();
A ba = new B();
System.out.println("1-------------");
System.out.println(A.class.isAssignableFrom(a.getClass()));
System.out.println(B.class.isAssignableFrom(b.getClass()));
System.out.println(A.class.isAssignableFrom(b.getClass()));
System.out.println(B.class.isAssignableFrom(a.getClass()));
System.out.println(A.class.isAssignableFrom(ba.getClass()));
System.out.println(B.class.isAssignableFrom(ba.getClass()));
System.out.println("2-------------");
System.out.println(a.getClass().isAssignableFrom(A.class));
System.out.println(b.getClass().isAssignableFrom(B.class));
System.out.println(a.getClass().isAssignableFrom(B.class));
System.out.println(b.getClass().isAssignableFrom(A.class));
System.out.println(ba.getClass().isAssignableFrom(A.class));
System.out.println(ba.getClass().isAssignableFrom(B.class));
System.out.println("3-------------");
System.out.println(Object.class.isAssignableFrom(b.getClass()));
System.out.println(Object.class.isAssignableFrom("abc".getClass()));
System.out.println("4-------------");
System.out.println("a".getClass().isAssignableFrom(Object.class));
System.out.println("abc".getClass().isAssignableFrom(Object.class));
}
}

以上就是爱站技术频道小编和大家分享的Java中isAssignableFrom的用法详解,还有其他的注意事项的说明,希望对你们都有所帮助!
上一篇:谈谈变量命名规范的重要性
