当前位置:主页 > java教程 > Java对象类型的判断详解

Java对象类型的判断知识点整理

发布:2019-10-31 11:05:33 219


给寻找编程代码教程的朋友们精选了相关的编程文章,网友束晗日根据主题投稿了本篇教程内容,涉及到Java、对象类型、判断、Java对象类型的判断详解相关内容,已被280网友关注,下面的电子资料对本篇知识点有更加详尽的解释。

Java对象类型的判断详解

instanceof

判断某个对象是否是某个类的实例或者某个类的子类的实例。它的判断方式大概是这样的:

public<T> boolean function(Object obj, Class<T> calzz) {
    if (obj == null) {
      return false;
    }
    try {
      T t = (T) obj;
      return true;
    } catch (ClassCastException e) {
      return false;
    }
  }

Class.equals()

这种方式比较的类型,一定是本身才返回true,子类或者父类都返回false;

 // B是A的子类,C是B的子类
    B b = new B();
    // false
    System.out.println(b.getClass().equals(A.class));
    // true
    System.out.println(b.getClass().equals(B.class));
    // false
    System.out.println(b.getClass().equals(C.class));

PS:b.getClass().equals(A.class)等同于b.getClass() == A.class

Class.isInstance()

这个方法跟instanceof完全等价。

 // B是A的子类,C是B的子类
    B b = new B();
    // true
    System.out.println(A.class.isInstance(b));
    // true
    System.out.println(B.class.isInstance(b));
    // false
    System.out.println(C.class.isInstance(b));

Class.isAssignableFrom

判断某个类是否是另一个类和其子类。

 // B是A的子类,C是B的子类
    // false
    System.out.println(B.class.isAssignableFrom(A.class));
    // true 
    System.out.println(B.class.isAssignableFrom(B.class));
    // true
    System.out.println(B.class.isAssignableFrom(C.class));

以上所述是小编给大家介绍的Java对象类型的判断详解整合,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对码农之家网站的支持!


参考资料

相关文章

  • JavaScript中this关键字的使用方法

    发布:2020-03-12

    this是函数内部的对象并且被用于调用该函数,this在全局中的使用非常之灵活,下面就带大家来详解JavaScript中this关键字的用法


  • 详解java利用jna调用c#中dll

    发布:2020-03-23

    前一段时间接了个项目,需要用到第三方提供的C#编写的dll,本身项目是java语言,所以便有了下面这篇文章,本文给大家介绍了关于java中如何使用jna调用c#中dll的相关资料,文中通过示例代码介


  • 实例解析微信小程序实现图片滚动效果

    发布:2020-02-03

    这篇文章主要介绍了微信小程序实现图片滚动效果,结合实例形式分析了微信小程序基于swiper组件的图片滚动效果相关实现技巧与操作注意事项,需要的朋友可以参考下


  • Java实现单例模式的五种方法介绍

    发布:2023-04-19

    单例模式确保某个类只有一个实例,而且自行实例化并向整个系统提供这个实例。在计算机系统中,线程池、缓存、日志对象、对话框、打印机、显卡的驱动程序对象常被设计成单例


  • centos7安装java的多种方式总结

    发布:2023-04-19

    这篇文章主要给大家介绍了关于centos7安装java的多种方式,文中通过实例代码以及图文介绍的非常详细,对大家学习或者使用java具有一定的参考学习价值,需要的朋友可以参考下


  • 实例分享java AOP原理及用法

    发布:2020-03-11

    在本篇文章里我们给大家整理了关于java AOP原理以及相关知识点总结,正在学习的朋友们参考下。


  • java输出随机图片示例效果

    发布:2020-03-18

    这篇文章主要介绍了java 实现输出随机图片实例代码的相关资料,需要的朋友可以参考下


  • java关于腾讯ocr图片识别接口调用总结

    发布:2019-06-11

    这篇文章主要为大家详细介绍了java实现腾讯ocr图片识别接口调用,拍车牌识别车牌号功能,具有一定的参考价值,感兴趣的小伙伴们可以参考一下


网友讨论