ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

instanceof和getClass的区别说明

2022-05-26 12:34:41  阅读:142  来源: 互联网

标签:instanceof getClass Parent 区别 System Child true


转自:

http://www.java265.com/JavaJingYan/202205/16514583603236.html

instanceof是java的一个二元操作符,它是由字母组成的,所以也是java的保留关键字.

instanceof关键字的功能:
     判断其左边对象是否为其右边类的实例,返回boolean类型的数据

     可以来判断继承中的子类的实例是否为父类的实现

     java中的instanceof是通过返回一个布尔值来指出

     这个对象是否是这个特定类或者是它的子类的一个实例

下文笔者讲述java中instanceof和getClass的区别,如下所示:

instanceof和getClass都可用于比较两个对象是否属于同一个类的实例
 但是
  instanceof检测一个类的父类和子类(检测类和派生类),都会返回true
  但是getClass是返回具体的字符串,只做严格的类判断
public class Test
{
    /*
    *java265.com 示例分享
    */
    public static void testInstanceof(Object x)
    {
        System.out.println("x instanceof Parent:  "+(x instanceof Parent));
        System.out.println("x instanceof Child:  "+(x instanceof Child));
        System.out.println("x getClass Parent:  "+(x.getClass() == Parent.class));
        System.out.println("x getClass Child:  "+(x.getClass() == Child.class));
    }
    public static void main(String[] args) {
        testInstanceof(new Parent());
        System.out.println("========================");
        testInstanceof(new Child());
    }
}
class Parent {
 
}
class Child extends Parent {
 
}
/*
输出:
x instanceof Parent:  true
x instanceof Child:  false
x getClass Parent:  true
x getClass Child:  false
========================
x instanceof Parent:  true
x instanceof Child:  true
x getClass Parent:  false
x getClass Child:  true
*/

 

 

标签:instanceof,getClass,Parent,区别,System,Child,true
来源: https://www.cnblogs.com/java265/p/16215219.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有