博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
JAVA面向对象-----instanceof 关键字
阅读量:6951 次
发布时间:2019-06-27

本文共 2152 字,大约阅读时间需要 7 分钟。

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[]); // true        System.out.println(is instanceof int[]); // true        System.out.println(ss instanceof String[]); // true        // System.out.println(bs instanceof int[]); // 不可转换的类型

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


—–乐于分享,共同进步!

—–更多文章请看:


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

你可能感兴趣的文章
Mybatis,模糊查询语句,以及传参数的正确写法
查看>>
路由器后面再接一个路由器怎么设置(二级路由)
查看>>
jetty服务器启动方法总结【备用】
查看>>
yii cmenu 中使用 onclick
查看>>
python 字典value排序
查看>>
nginx 添加https 配置
查看>>
中文自然语言处理:手写两个方法去掉字符串中的空格
查看>>
fetch方法
查看>>
HTML——CSS3学习
查看>>
亚像素级角点定位
查看>>
C#闭包函数
查看>>
浅谈vr基础视频教程 改变技术革命
查看>>
c++调用DOS命令,不显示黑屏
查看>>
$apply()和$digest()——angular
查看>>
如何解决GitHub冲突<一>:GitHubDesktop同步你的分支
查看>>
python虚拟环境
查看>>
ls -l 各项含义
查看>>
Helios与Katana的区别
查看>>
远程连接Mysql失败的问题的解决的原因
查看>>
师生关系读后感
查看>>