JAVA面向对象-----instanceof 关键字

instanceof 关键字
1:快速演示instanceof

    Person p=new Person();System.out.println( p instanceof Person);

2:instanceof是什么?

1:属于比较运算符:
2:instanceof关键字:该关键字用来判断一个对象是否是指定类的对象。
3:用法:
对象 instanceof 类;
该表达式是一个比较运算符,返回的结果是boolea类型 true|false
注意:使用instanceof关键字做判断时,两个类之间必须有关系。

3:案例
定义一个功能表函数,根据传递进来的对象的做不同的事情,如果是狗让其看家,如果是猫让其抓老鼠

1:定义动物类
2:定义狗类继承动物类
3:定义猫类继承动物类
4:定义功能根据传入的动物,执行具体的功能
5:instanceof好处可以判断对象是否是某一个类的实例

/*instanceof比较运算符检查是否是类的对象1:可以判断对象是否是某一个类的实例用法对象  instanceof 类; 案例
定义一个功能函数,根据传递进来的对象的做不同的事情如果是狗让其看家,如果是猫让其抓老鼠
1:定义动物类
2:定义狗类继承动物类
3:定义猫类继承动物类
4:定义功能根据传入的动物,执行具体的功能*/class Animal {String name;void eat() {System.out.println("吃东西");}void shout() {System.out.println("我是动物");}
}class Dog extends Animal {void eat() {System.out.println("啃骨头");}void shout() {System.out.println("旺旺");}}class Cat extends Animal {void eat() {System.out.println("吃老鼠");}void shout() {System.out.println("喵喵");}
}class Demo11 {public static void main(String[] args) {Demo11 d = new Demo11();// 对象 instanceof 类;System.out.println(d instanceof Demo11);d.doSomething(new Dog());d.doSomething(new Cat());}// 定义一个功能函数,根据传递进来的对象的做不同的事情// 如果是狗让其看家,如果是猫让其抓老鼠// 对象 instanceof 类;void doSomething(Animal a) {if (a instanceof Dog) {a.eat();a.shout();System.out.println("小狗看家");} else if (a instanceof Cat) {a.eat();a.shout();System.out.println("抓老鼠");}}
}

练习:

        byte[] bs = new byte[] { 1, 2, 3 };int[] is = new int[] { 1, 2, 3 };String[] ss = new String[] { "jack", "lucy", "lili" };System.out.println(bs instanceof byte[]); // trueSystem.out.println(is instanceof int[]); // trueSystem.out.println(ss instanceof String[]); // true// System.out.println(bs instanceof int[]); // 不可转换的类型

【正在看本人博客的这位童鞋,我看你气度不凡,谈吐间隐隐有王者之气,日后必有一番作为!下面有个“顶”字,你就顺手把它点了吧(要先登录CSDN账号哦 )】


—–乐于分享,共同进步!
—–更多文章请看:http://blog.csdn.net/duruiqi_fx


转载于:https://www.cnblogs.com/hainange/p/6153860.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/260976.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

电子工程师必去的论坛网站

Abstract 搞电子不能闭门造车,要到网上去交流交流,做个网络吸血鬼也好。本人偶然也发一些资料,还是要感谢活跃在各大论坛上的大虾们,让小弟要走了不少弯路。有问题google一下(不是本人崇洋媚外,google的功能…

对象的引用

int、datetime、bool、char等类型都属于值类型(valuetype),赋值的时候是传递拷贝。 普通的对象则是引用类型,赋值的时候是传递引用。传递给函数也是引用传递的。转载于:https://www.cnblogs.com/roboot/archive/2012/02/15/235329…

Cesium应用篇:3控件(3)SelectionIndicator InfoBox

假设这样一个场景,用户在Cesium球上加载了一个GeoJson文件(DataSource),里面是全美国所有州的Geometry信息(Entity),叠加到球面后,你自然会有一种冲动,点击某一个州&…

北理工计算机学院新闻,北理工计算机学子勇夺CVPR 2021 AI安全国际顶级赛事季军...

2021年4月19日,CVPR 2021挑战者计划第六期落下帷幕。由北理工计算机学院教师李元章、张全新及广州大学李进教授指导的DemiguiseWoo战队,在挑战赛赛道二“ImageNet无限制对抗攻击”发起冲击,最终以9303.6的总分取得决赛第三名的好成绩&#xf…

字符串入门

暴力 字典树总结:字典树的功能就是map字符串得到编码或者查询前缀关系套模板的时候注意t,s,-‘a’,[26],sz0的初始化还有一个问题,到底字典树开多少内存比较合适,反正至少是要开字符总长度*2hdu1251 http://acm.hdu.edu.cn/showpr…

C++ 的基础概念(3)——多态详解。

最近两次面试都问到了多态,我也不得不重视起来了,最近最大的收获就是:基础知识很重要,就算你很会写代码,但是面试官问你基础知识答不上来的话,也很难被人赏识和录用,所以还是要多补补基础概念&a…

美育在计算机教育中应用,在现代教育技术中绽放数学美育之花

21世纪是信息化的社会,计算机、网络等现代技术的飞速发展,作为现代教育技术,计算机多媒体技术和网络技术已经越来越多地走进小学数学课堂,为深化教学改革,培养学生能力,发展学生个性,提供了崭新…

.NET Forms身份验证

.NET表单身份验证 ASP.NET Forms 身份验证的简单实现&#xff1a;1&#xff09;在Web.config文件中配置应用程序使用 Forms 身份验证&#xff1b;2&#xff09;创建登陆页面&#xff0c;将用户身份验证票证添加到Cookie集合。1.配置文件中设置为Forms验证<authentication mo…

Oracle SQL篇(三)Oracle ROWNUM 与TOP N分析

首先我们来看一下ROWNUM&#xff1a;含义解释&#xff1a;1、rownum是oracle为从查询返回的行的编号&#xff0c;返回的第一行分配的是1&#xff0c;第二行是2&#xff0c;依此类推。这是一个伪列&#xff0c;可以用于限制查询返回的总行数。2、rownum不能以任何基表的名称作为…

C++ Primer 第10章 pair类型

//10.2.cpp //至少使用三种方法创建pair对象。 //编写三个版本的程序&#xff0c;分别采用不同的方法来创建pair对象 //方法1&#xff1a;在定义pair对象时提供初始化式来创建pair对象#include<iostream> #include<vector> #include<utility> #include<st…

计算机对口升学可以报考的学校,对口升学可以报考的学校都在这里,赶快来收藏吧...

对口升学指对口高考&#xff0c;在平常又叫对口单招&#xff0c;对口升学&#xff0c;是从中等职业学校毕业生招生&#xff0c;强调中等职业学校毕业生对口升高职的专业技能考试&#xff0c;以专业技能成绩为主要录取依据的招生办法。报名条件具有正式学籍的中等职业学校毕业生…

Visual Studio 常用快捷键 (二)

想不到上一篇 【Visual Studio 常用快捷键】 受这么多人的欢迎。看来大家对Visual Studio的用法非常感兴趣。 接下来我准备写一个 “Visual Studio使用技巧 ” 一个系列的博客。 希望对大家有所帮助 本篇继续介绍几个常用的快捷键 阅读目录 按两下Tab键回退到光标的上一次位置…

js 兼容event.target

function getEventTarget(e){ewindow.event||e;return e.srcElement||e.target; }转载于:https://www.cnblogs.com/manong13/archive/2012/02/23/2364443.html

企业邮箱收发信息服务器怎么设置,网易闪电邮企业邮箱收发设置教程(IMAP)...

网易闪电邮企业邮箱收发设置教程(IMAP)发表时间 2019-05-30人气 73(1)启动闪电邮后&#xff0c;点击“邮箱---新建邮箱账户”菜单&#xff0c;如下图&#xff1a;(2)输入“邮箱地址和密码”&#xff0c;点击下拉箭头继续设置&#xff0c;设置完成后点击下一步&#xff0c;如下图…

订餐系统之Excel批量导入

批量导入现在基本已经成为各类系统的标配了&#xff0c;当前&#xff0c;我们订餐系统也不例外&#xff0c;什么商家呀、商品呀、优惠码之类的&#xff0c;都少不了。毕竟嘛&#xff0c;对非开发人员来说&#xff0c;看到Excel肯定比看到很多管理系统还是要亲切很多的。这里&am…

需要忽略的一些信号

程序往往会因为收到一些信号导致退出&#xff0c;但很多时候并不是我们想要的&#xff0c;比如往一个已经关闭的socket连接发送数据就会受到SIGPIPE,此信号默认会退出程序&#xff0c;但其实大部分时候我们并不想这么做&#xff0c;所以需要忽略一些信号。常见的有 SIGPIPE SIG…

获取网页中选中的文字

获取页面中选中的文字 //获取页面中选中的文字 function getSelectedText(){if(window.getSelection){ //FFreturn window.getSelection().toString();}else{ //IEreturn document.selection.createRange().text;} }设置或获取输入框的选中文字 //设置文字选中 function setSe…

云服务器和独享虚拟主机的区别,独享虚拟主机和云服务器的几大区别

独享虚拟主机和云服务器的几大区别发布时间&#xff1a;2020-10-15 19:05:51来源&#xff1a;亿速云阅读&#xff1a;99作者&#xff1a;Leah栏目&#xff1a;云计算今天就跟大家聊聊有关独享虚拟主机和云服务器的几大区别&#xff0c;可能很多人都不太了解&#xff0c;为了让大…

oracle数据库之数据导入问题

2019独角兽企业重金招聘Python工程师标准>>> 在oracle数据库中建立好数据库以后&#xff0c;需要使用PLSQL进行用户创建&#xff0c;打开PLSQL&#xff0c;使用时需要使用最高权限进入PLSQL。如下图&#xff1a; 不需要使用用户名和密码&#xff0c;进入数据库操作。…

转向ARC的说明

转自hherima的博客原文&#xff1a;Transitioning to ARC Release Notes&#xff08;苹果官方文档&#xff09; ARC是一个编译器特征&#xff0c;它提供了对OC对象自动管理内存。ARC让开发者专注于感兴趣的代码和对象的关系&#xff0c;而不用考虑对象的retain和release。 概要…