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

多态

认识多态

对象多态:

行为多态:

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

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

使用多态的好处

比如People p1 = new Student();

p1.run()

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

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

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

对象回调思想:

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

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

多态下的类型转换问题

类型转换

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

类型转换异常:

final

常量

静态代码块里面赋值:

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

抽象类

抽象类场景:

相关推荐
杰哥哥不是个好叔叔13 分钟前
【Spring AI】Spring AI 2.0.1 新特性袭来
java·人工智能·spring
莫陌尛.18 分钟前
Java核心知识点:直接内存、CPU密集型线程池、并行流对比文档
java·开发语言
Zane199423 分钟前
自定义异常该继承 Exception 还是 RuntimeException,就看这一个问题
java·后端
西峰u24 分钟前
Java多线程初阶完整总结|线程、锁、volatile、等待通知、常见案例
java·开发语言·jvm
爱喝可乐的中登32 分钟前
SpringBoot 云边协同|智慧地铁 ISCS 改造实战第 10 篇:全网权限与数据隔离重构|线路‑车站‑专业三级 RBAC、边缘数据权限下沉
java·spring boot·重构
落魄实习生1 小时前
Spring AI Alibaba入门-生态集成
java·人工智能·spring
重生之我是Java开发战士1 小时前
【Java EE】认识Linux与项目部署
java·linux·java-ee
LXMXHJ1 小时前
springboot项目测试
java·spring boot·后端·测试
程序员雪球1 小时前
本地IDEA打断点debug容器
java·开发语言
码匠许师傅1 小时前
【设计模式精讲】2. 设计原则基石:SOLID 与几条关键原则
java·设计模式·log4j