java中的instanceof关键字
来源:互联网 发布:加拿大研究生留学 知乎 编辑:程序博客网 时间:2024/05/22 00:28
一、作用
判断一个对象属于哪个类的实例
二、使用方法
对象 instanceof 类 //返回的是Boolean类型
三、代码示例
package lkp;//定义一个类Aclass A{public void fun1(){System.out.println("A——1");}public void fun2(){this.fun1();}}//定义一个子类B,继承Aclass B extends A{public void fun1(){//覆写父类中的fun1方法System.out.println("B——1");}public void fun3(){//子类自己定义的方法System.out.println("B——3");}}//定义一个子类C,继承Aclass C extends A{public void fun1(){//覆写父类的fun1方法System.out.println("C——1");}public void fun4(){//子类自己定义的方法System.out.println("C——4");}}class Test{public static void main(String args []){A a = new B();//向上转型实例化A类对象System.out.println("A a = new B():" + (a instanceof A));System.out.println("A a = new B():" + (a instanceof B));A a1 = new A();//构造实例化对象System.out.println("A a1 = new A():" + (a1 instanceof A));System.out.println("A a1 = new A():" + (a1 instanceof B));}}
四、在向下转型前进行验证
package lkp;//定义一个类Aclass A{public void fun1(){System.out.println("A——1");}public void fun2(){this.fun1();}}//定义一个子类B,继承Aclass B extends A{public void fun1(){//覆写父类中的fun1方法System.out.println("B——1");}public void fun3(){//子类自己定义的方法System.out.println("B——3");}}//定义一个子类C,继承Aclass C extends A{public void fun1(){//覆写父类的fun1方法System.out.println("C——1");}public void fun4(){//子类自己定义的方法System.out.println("C——4");}}class Test{public static void main(String args []){fun(new B());//传递B类的实参,产生向上转型fun(new C());//传递C类的实参,产生向上转型}public static void fun(A a){//接收父类的对象,分别调用各个子类单独定义的方法a.fun1();if(a instanceof B){//判断是否是B类的实例B b = (B)a;//进行向下转型b.fun3();//调用子类自己定义方法}if(a instanceof C){//判断是否是C类的实例C c = (C)a;//进行向下转型c.fun4();//调用子类自己定义的方法}}}
0 0
- Java中的instanceof关键字
- Java中的instanceof关键字
- Java中的instanceof关键字
- Java中的instanceof关键字
- Java中的instanceof关键字
- Java中的instanceof关键字
- Java中的instanceof关键字
- Java中的instanceof关键字
- Java中的instanceof关键字
- java中的instanceof 关键字
- Java中的instanceof关键字
- Java中的instanceof关键字
- Java中的instanceof关键字
- Java中的instanceof关键字
- Java中的instanceof关键字
- Java中的instanceof关键字
- Java中的instanceof关键字
- Java中的instanceof关键字
- java 简单的单例模式
- mysql查询今天,昨天,近7天,近30天,本月,上一月数据
- SmartWeatherAPI - 加密
- 【shell脚本练习】判断目录读写权限
- linux jdk 配置
- java中的instanceof关键字
- poj 1724 最短路+优先队列(两个约束条件)
- spring的三种实例化bean方式
- 读论文笔记-主题-semantic compositionality
- 学习书籍
- CentOS 6.5系统编译安装MySQL 5.6详细过程
- "Str2$"变量未定义(学生信息管理系统问题之一)
- C++结构体之统计最高最低分
- JPQL与NativeSQL