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

    1、isAssignableFrom针对的是class对象

    2、instanceof是实例

    isAssignableFrom是用来判断一个类Class1和另一个类Class2是否相同或是另一个类的超类或接口。通常调用格式是Class1.isAssignableFrom(Class2) 调用者和参数都是java.lang.Class类型。

    而instanceof是用来判断一个对象实例是否是一个类或接口的或其子类子接口的实例。格式是:object instanceof TypeName;interImpl instanceof inter第一个参数是对象实例名,第二个参数是具体的类名或接口名,例如String,InputStream。

     1 package com.wondersgroup;
     2 
     3 /**
     4  * Created by Donge on 2017/1/9.
     5  */
     6 import java.util.ArrayList;
     7 import java.util.LinkedList;
     8 import java.util.List;
     9 
    10 public class Test {
    11     public static void main(String[] args) {
    12         List<Object> list1 = new ArrayList<Object>();
    13         List<Object> list2 = new LinkedList<Object>();
    14         List<Object> list3 = new ArrayList<Object>();
    15 
    16         System.out.println(list1.getClass().isAssignableFrom(list2.getClass()));
    17         System.out.println(list1.getClass().isAssignableFrom(list3.getClass()));
    18 
    19         System.out.println(list1 instanceof List);
    20         System.out.println(list1 instanceof ArrayList);
    21         System.out.println(list1 instanceof LinkedList);
    22     }
    23 
    24 }

    运行结果为:

    false
    true
    true
    true
    false

  • 相关阅读:
    将博客搬至CSDN
    Redis快速入门详解
    Linux下离线安装MySQL
    Git-如何将已存在的项目提交到git
    linux下修改完profile文件的环境变量后如何立即生效
    Redis允许远程连接
    Spring Boot中使用Swagger2构建强大的RESTful API文档
    JVM内存结构
    java类的加载机制
    linux 内存查看
  • 原文地址:https://www.cnblogs.com/liqingdong/p/6265418.html
Copyright © 2011-2022 走看看