java基础(面向对象高级部分)

多态

认识多态

对象多态:

行为多态:

编译看左边,运行看右边:

变量是编译看左边,运行也看左边(变量没有多态性):

使用多态的好处

比如People p1 = new Student();

p1.run()

下面有两千行代码,不可能重写写吧,可以直接把Student更换掉,这样子是不是更方便。

1.多态下,右边对象是解耦合的。

2.多态下,父类类型作为方法的形参,可以接收一切子类对象,方便更便利。

对象回调思想:

我把对象调给你,然后你又用对象调用我方法。

3.多态下存在的一个问题:不能直接调用子类独有的功能(类型转化解决)。

多态下的类型转换问题

类型转换

强制类型转换:可以解决多态下不能直接调用子类独有方法的问题:

类型转换异常:

final

常量

静态代码块里面赋值:

只有两种赋值 ,1.直接赋值,2.静态代码块赋值。

抽象类

抽象类场景:

相关推荐
知守观4 分钟前
多模块架构演进:横向分层 vs 纵向领域,13 个真实项目的切分对照
java·后端·微服务
Java成神之路-19 分钟前
Java String 为什么不可变?和 HashMap 到底有什么关系?
java
paopaokaka_luck23 分钟前
基于springboot+vue的益暖微光公益服务平台(DeepSeek公益助手、善款信息追溯、志愿服务积分闭环、ECharts运营分析、活动状态自动流转)
java·前端·javascript·spring boot·mysql·架构·echarts
文丑颜不良啊33 分钟前
LeetCode1401~1420题目解析
java·leetcode
Nuanyt35 分钟前
LeetCode Hot 100 链表专题2 3 题 (Java)
java·笔记·算法·leetcode·链表
文丑颜不良啊42 分钟前
LeetCode1341~1360题目解析
java·leetcode
QianhangQianping1 小时前
撤销重做不是「存快照」:一个可视化编辑器的Operation 设计
java·前端·数据库·typescript·编辑器·前端架构·撤销重做
海绵宝宝转agent1 小时前
LeetCodehot100题解
java·笔记·学习·算法·leetcode·深度优先
SunnyDays10111 小时前
Java 操作 Word 脚注和尾注:添加、读取与删除
java·word
SunnyDays10111 小时前
Java 为 Word 添加页码:隐藏封面页码、从指定页开始编号、奇偶页页码设置等
java·word·页码