Java学习笔记-多态
2022/7/28 14:31:17
本文主要是介绍Java学习笔记-多态,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
Java的三大特性: 封装、继承、多态
1:多态
1.1: 方法的多态(了解)
- 方法的重写和重载就是方法的多态的体现形式
1.2: 对象的多态
1.2.1:
对象的多态性:父类的引用指向子类的对象。
1.2.2 : 多态的使用
1:使用前提
- 类中存在继承关系
- 子类对父类方法进行重写
2:虚拟方法调用
- 在编译期,只能调用父类声明的方法,但 在执行期实际执行的是子类重写父类的方法。(编译时,看左边;运行 时,看右边。 )
- 若 编 译 时 类 型 和 运 行 时 类 型 不 一 致, 就 出 现 了 对 象 的 多 态 性
- “看左边”:看的是父类的引用(父类中不具备子类特有的方法) “看右边”:看的是子类的对象(实际运行的是子类重写父类的方法)。
1.3: 多态的转型
1.3.1 多态的向上转型
语法格式:
父类 父类引用 = new 子类();
父类的引用可以调用父类的所有成员方法,可以调用子类的重写父类的方法,但是不能调用子类独有的方法。
1.3.2 多态的向下转型
语法格式:
父类类型 父类引用 = new 子类(); 子类类型 子类引用 = (子类类型)父类的引用;//向下转型
使用特点:先向上转型,再向下转型。(为了防止出现ClassCastException 异常)
1.4 instanceof关键字
1.4.1 instanceof 是 Java 的保留关键字。它的作用是测试它左边的对象是否是它右边的类的实例,返回 boolean 的数据类型。
语法格式:
对象 instanceof 类名 //a instanceof A //判断对象 a 是否是类 A 的实例。如果是,返回 true,如果不是,返回 false; // 使用情境:为了避免在向下转型时出现 ClassCastException异常,我们在进行向下转型之前,先进行 instanceof 的判断 , 一旦返回true, 就进行向下转型。如果返回 false,不进行向下转型。
这篇关于Java学习笔记-多态的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-05-19永别了,微服务架构!
- 2024-05-15鸿蒙生态设备数量超8亿台
- 2024-05-13TiDB + ES:转转业财系统亿级数据存储优化实践
- 2024-05-09“2024鸿蒙零基础快速实战-仿抖音App开发(ArkTS版)”实战课程已上线
- 2024-05-09聊聊如何通过arthas-tunnel-server来远程管理所有需要arthas监控的应用
- 2024-05-09log4j2这么配就对了
- 2024-05-09nginx修改Content-Type
- 2024-05-09Redis多数据源,看这篇就够了
- 2024-05-09Google Chrome驱动程序 124.0.6367.62(正式版本)去哪下载?
- 2024-05-09有没有大佬知道这种数据应该怎么抓取呀?