java 继承关系判断

  • Class.java # public native boolean isInstance(Object obj);
// true
System.out.println(childType.isInstance(childObject));
// true
System.out.println(parentType.isInstance(childObject));
// false
System.out.println(childType.isInstance(parentObject));

说明:

  • 参数obj的参数类型若为.class,返回 false
  • 当参数强转为调用者对象不会报异常时,返回true(即调用者为参数的类或父类)
  • Class.java#public native boolean isAssignableFrom(Class<?> cls); 调用者和参数都是.class类型;参数是调用者的子类时为true
// true
System.out.println(parentType.isAssignableFrom(childType));
  • instance of 关键字 用法: A isntance of B:判断左边 对象是否是右边 的实例;
@Test
public void test3() {
    Child1 childObject = new Child1();
    Parent1 parentObject = new Parent1();
    // true
    System.out.println(childObject instanceof Parent1);
    // false
    System.out.println(parentObject instanceof Child1);
}

Original: https://www.cnblogs.com/kongieg/p/15975557.html
Author: kongieg
Title: java 继承关系判断

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/586772/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • Spring-Boot-Actuator

    1、Actuator 分布式导致部署服务的增多,运维人员压力倍增,传统的运维方法已经不适应相应的变化,需要对应的监控措施来确保衡量服务的运行情况。actuator为Spring B…

    Java 2023年6月8日
    074
  • Nginx 源码分析– ngx_array、ngx_list基本数据结构

    应该说大家对这两个数据结构相当熟悉了,因此我们一并将它们进行分析,瞧一瞧nginx是如何实现它们的。在此篇之前,我们已经对nginx内存池(pool)进行了分析,在此基础上来理解n…

    Java 2023年6月15日
    070
  • listener@Autowired无法注入bean的一种解决方法

    public class FileListener extends FileAlterationListenerAdaptor { @Autowired private WebSo…

    Java 2023年6月6日
    072
  • 双向链表实现思路

    和单向链表的遍历相同,需要一个辅助节点来保存当前正在遍历的节点 双向链表多出了一个front,所以在添加时,要让新增节点的front指向链表尾节点 和单向链表的修改相同 使用tem…

    Java 2023年6月16日
    065
  • 在Golang中是锁或Channel还是Atomic

    与其他编程语言一样在并发环境下如不对多个 goroutine(线程)访问或修改的共享资源元素的进行控制,让进入 临界区的对象互斥。就可能会出现数据异常情况;一个 非线程安全对象如下…

    Java 2023年6月16日
    084
  • Mybatis配置解析(核心配置文件)

    4、配置解析 4.1、核心配置文件 Mybatis的配置文件包含了会深深影响mybatis行为的设置和属性信息 mybatis-config.xml properties(属性)重…

    Java 2023年6月13日
    0111
  • MySQL十二:索引分析

    转载~ 数据库优化是一个很常见的面试题,下面就针对这一问题详细聊聊如何进行索引与sql的分析与优化。 一、执行计划(EXPLAIN) MySQL 提供了一个 EXPLAIN 命令,…

    Java 2023年6月8日
    067
  • 地址解析协议(ARP) 分析

    404. 抱歉,您访问的资源不存在。 可能是网址有误,或者对应的内容被删除,或者处于私有状态。 代码改变世界,联系邮箱 contact@cnblogs.com 园子的商业化努力-困…

    Java 2023年6月9日
    053
  • 应用启动加速-并发初始化spring bean

    背景 随着需求的不断迭代,服务承载的内容越来越多,依赖越来越多,导致服务启动慢,从最开始的2min以内增长到5min,导致服务发布很慢,严重影响开发效率,以及线上问题的修复速度。所…

    Java 2023年6月8日
    073
  • fileUpload上传图片,图片消失

    问题描述 我在Eclipse上运行项目的时候,在我用fileUpload上传图片,等到下一次Tomcat刷新的时候,这个照片就没了,而且点击查看那个文件夹也查看不到有图片文件。 我…

    Java 2023年6月8日
    081
  • 学习MySQL

    新建表: Student(学生表) 列名 类型 大小 默认值 说明 id int 主键(自增长) code varchar 50 ” 学生编号 name varchar…

    Java 2023年6月5日
    082
  • Spring Boot @Autowired 没法自动注入的问题

    Application 启动类: @SpringBootApplication @EnableConfigurationProperties @ComponentScan(base…

    Java 2023年5月30日
    088
  • 使用canal将数据同步到ROCKETMQ

    概述 我们需要将数据从MYSQL写入到rocketmq。实现步骤如下: 安装canal.admin 修改配置 server: port: 8849 spring: jackson:…

    Java 2023年5月30日
    061
  • Java应用工程结构

    分层的本质是关注点分离,隔离对下层的变化,可以简化复杂性,使得层次结构更加清晰。 1. 主流分层结构介绍 目前业界存在两种主流的应用工程结构:一种是阿里推出的《Java开发手册》中…

    Java 2023年5月29日
    087
  • 日常踩坑_idea使用maven打包时报错Please refer to dump files (if any exist) [date].dump, [date]-jvmRun[N].dump

    背景提要 想要使用Idea自带的maven工具进行打包时,报了错Please refer to dump files (if any exist) [date].dump, [da…

    Java 2023年6月7日
    079
  • 前n个数字种的二进制数中的1的个数

    给定一个非负整数 n ,请计算 0 到 n 之间的每个数字的二进制表示中 1 的个数,并输出一个数组。 示例 1: &#x8F93;&#x5165;: n = 2 …

    Java 2023年6月7日
    058
亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球