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的用法详解,还有其他的注意事项的说明,希望对你们都有所帮助!

上一篇:谈谈变量命名规范的重要性

下一篇:分享些JAVA多线程的实例代码给你们

您可能感兴趣的文章

相关阅读

热门软件源码

最新软件源码下载