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

多态

认识多态

对象多态:

行为多态:

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

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

使用多态的好处

比如People p1 = new Student();

p1.run()

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

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

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

对象回调思想:

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

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

多态下的类型转换问题

类型转换

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

类型转换异常:

final

常量

静态代码块里面赋值:

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

抽象类

抽象类场景:

相关推荐
yzhSWJ几秒前
Excel 操作 转图片,转pdf等
java·pdf·excel
小贾要学习10 分钟前
【C++】stack,queue和priority_queue(优先级队列)
java·c++·rpc
weixin_5150696620 分钟前
线程池详解:原理、使用与优化
java·开发语言
武昌库里写JAVA1 小时前
Quartus 开发可实现人工智能加速的 FPGA 系统
java·vue.js·spring boot·课程设计·宠物管理
xujinwei_gingko1 小时前
服务发现Nacos
java·服务发现
心想好事成1 小时前
尚硅谷redis7 47-48 redis事务之理论简介
java·数据库·redis
bloglin999992 小时前
java的vscode扩展插件
java·开发语言·vscode
Magnum Lehar2 小时前
vulkan游戏引擎的pipeline管道实现
java·开发语言·游戏引擎
Magnum Lehar2 小时前
vulkan游戏引擎的vulkan/shaders下的image实现
java·前端·游戏引擎