随笔 - 54  文章 - 0  评论 - 2  阅读 - 65713

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);
    }
posted on   kongieg  阅读(784)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

点击右上角即可分享
微信分享提示