Java基础:instanceof用法详解以及注意事项

Java基础:instanceof用法详解以及注意事项Java基础:instanceof用法详解以及注意事项instanceofinstanceof使用注意事项instanceof使用示例instanceof应用场景instanceofinstanceof是Java的一个保留关键字,左边是对象,右边是类,返回类型是Boolean类型。它的具体作用是测试左边的对象是否是右边类或者该类的子类创建的实例对象,是,则返回true,否则返回false。instanceof使用注意事项先有继承关系,再有instanceof的使用。当该测试对象创建时右边的声明

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全家桶1年46,售后保障稳定

instanceof

instanceof是Java的一个保留关键字,左边是对象,右边是类,返回类型是Boolean类型。它的具体作用是测试左边的对象是否是右边类或者该类的子类创建的实例对象,是,则返回true,否则返回false。

instanceof使用注意事项

  1. 先有继承关系,再有instanceof的使用。
  2. 当该测试对象创建时右边的声明类型左边的类其中的任意一个跟测试类必须得是继承树的同一分支或存在继承关系,否则编译器会报错。

instanceof使用示例

public class Application { 
   

  public static void main(String[] args) { 
   

    // Object > Person > teacher
    // Object > Person > Student
    // Object > String
    Object o = new Student(); // 主要看这个对象是什么类型与实例化的类名
    // instanceof关键字可以判断左边对象是否是右边类或者子类的一个实例
    System.out.println(o instanceof Student); // o 是Student类的一个实例对象 所以判断右边类跟student有无关系 以及显示声明有无关系
    System.out.println(o instanceof Person); // true
    System.out.println(o instanceof Object); // true
    System.out.println(o instanceof String); // false
    System.out.println(o instanceof Teacher); // 无关系
    System.out.println("========================");
    Person person = new Student();
    System.out.println(person instanceof Person); // true
    System.out.println(person instanceof Object); // true
    // System.out.println(person instanceof String); // 编译错误
    System.out.println(person instanceof Teacher); // 无关系

  }
}

Jetbrains全家桶1年46,售后保障稳定

instanceof 应用场景

需要用到对象的强制类型转换时,需要使用instanceof进行判断。“

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/226917.html原文链接:https://javaforall.net

(0)
上一篇 2025年6月21日 下午11:43
下一篇 2025年6月22日 上午7:22


相关推荐

  • Reactor模型详解

    Reactor模型详解文章目录前言一 经典的同步阻塞模型二 单 reactor 单线程设计 1 代码示例三 单 reactor 多线程设计四 多 reactor 多线程设计五 Reactor 模型结构图总结前言说到 NIO Netty Reactor 模型一定是绕不开的 因为这种模式架构太经典了 但是好多人在学习的时候 往往会忽视基础的学习 一上来就是 Netty 各种高大上 但是却没有静下心来好好看看 Netty 的基石 Reactor 模型 本文就带着大家看看 Reactor 模型 让大家对 Reactor 模型有个浅显而又感性的认识 一 经典的同

    2026年3月19日
    2
  • javascript如何实现页面跳转_跳转页面的代码

    javascript如何实现页面跳转_跳转页面的代码JavaScript是一种属于网络的脚本语言,已经被广泛用于Web应用开发,常用来为网页添加各式各样的动态功能。下面我们来看一下如何使用JavaScript跳转页面。JavaScript中几种页面跳转的方法:window.location.href=’url’:比较常用的方法,直接跟指定要跳转的地方。window.history.back(-1);:参见的浏览器返回上一个已访问的页面,直到访…

    2022年8月12日
    8
  • 负数补码

    负数补码今天做了个很容易出错的题目总结下关于负数补码的知识首先在计算机系统中数据都是以补码存储的正数的补码很简单就等于其二进制原码负数的补码 1 先将负数的绝对值进行二进制转换 2 将最高位即符号位变为 1 符号位为 1 表示负数 0 为正数 3 然后求反码 除符号位其他取反就可以 4 最后求补码即在反码最低位加 1 例如 5 的补码 1 首先绝对值二进制为 000001012 符号位变 1 即 取反码即 补码为强调一点 128 的补码就是

    2026年3月19日
    3
  • h3c交换机重启_h3c交换机清空配置命令

    h3c交换机重启_h3c交换机清空配置命令h3c交换机清空配置命令H3CCAS云计算管理平台融合了华三通信在网络安全领域的积累,通过对IEEE802.1Qbg(EVB)标准的支持,为虚拟机在安全、可视、可监管的环境下运行奠定了基础。下面是小编收集的h3c交换机清空配置命令,希望大家认真阅读!一.用户配置:system-view[H3C]superpasswordH3C设置用户分级密码[H3C]undosuperpasswor…

    2022年6月20日
    126
  • MidJourney本地部署

    MidJourney本地部署

    2026年3月15日
    3
  • python删除首行_Python删除文件第一行

    python删除首行_Python删除文件第一行一、代码实例:defdel_firstline():forlineinfileinput.input(“file.txt”,inplace=1):ifnotfileinput.isfirstline():print(fileinput.replace(“\n”,””))二、使用的库:fileinputfileinput模块提供处理一个或多个文本文件的功能,可以通过使用for循环…

    2022年5月29日
    191

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号