当前位置:网站首页>什么是多态。
什么是多态。
2022-08-04 05:35:00 【郝老三】
引言~我们总提到面向对象的三大特征、封装,继承,多态。今天我们就好好聊一聊多态。
一:什么是多态。
多态是建立在继承的基础上的,可以说没有继承就没有多态。多态指的就是。首先子类继承父类的方法、然后子类重写父类的方法、最后使用的时候,用父类的对象指向子类的引用,同样的一个父类对象会出现多种状态。
这样说可能有些枯燥,让我们结合代码来看一看吧~
二:解释多态的例子。
这个例子是,大话设计模式中简单工厂的例子,我先将类图、代码贴到下方,然后通过对这个例子的论述、深刻的理解多态。
2.1 类图
一共有六个类。分别是简单工厂类,运算类和它的四个子类
2.2 运算类
2.3 加减乘除类
2.4简单工厂类
这里,±*/四个case分支下,每个都是父类型的对象,指向的子类型的引用。通过这种方式,实现了多态。
命名同样都是这个父类型的对象oper,却可以有多种多样不同的操作。
2.5 客户端代码
三:总结
多态的核心就是,父类型对象指向不同的子类引用,通过这种方式,可以减少很多的if判断,让我们的代码更加容易维护(通过添加子类对象的方式)。让我们写出的程序更加符合设计原则。
四:代码对应。
4.1 多态是指为不同数据类型的实体提供统一的接口。
在这里。不同数据类型的实体,指的就是这些子类。OperationAdd,OperationSub,OperationMul,OperationDiv,统一的接口指的就是统一的父类对象oper。
4.3 父类的引用指向子类的对象。
父类的引用指向子类的对象指的是
声明的一个父类型引用,指向对应子类对象。
边栏推荐
- 异步编程之promise,任务队列,事件循环
- DOM的12中节点类型,通过关系或方法获取DOM节点,渲染到浏览器页面的一些特效功能,获取DOM节点来改变属性,点击图片,切换为所点击的图片为背景图,页面上的表单验证,点击底部导航栏切换界面
- 字符串的一些方法
- 狗都能看懂的Pytorch MAML代码详解
- 沉浸式体验参加网络安全培训班,学习过程详细到底!
- Faster - RCNN principle and repetition code
- 你要悄悄学网络安全,然后惊艳所有人
- Visualization and Animation Technology (Computer Animation)
- 目标检测中的先验框(Anchor)
- 解决腾讯云DescribeInstances api查询20条记录以上的问题
猜你喜欢
电脑知识:台式电脑应该选择品牌和组装,值得收藏
网络技巧:教你给路由器装上电池,断电照样可以上网!
Detailed explanation of DenseNet and Keras reproduction code
Memory limit should be smaller than already set memoryswap limit, update the memoryswap at the same
Online public account article content to audio file practical gadget
Network skills: teach you to install batteries on the router, you can still surf the Internet when the power is cut off!
JUC锁框架——基于AQS的实现,从ReentrantLock认识独占和共享
狗都能看懂的CenterNet讲解及代码复现
基于爬行动物搜索RSA优化LSTM的时间序列预测
狗都能看懂的Vision Transformer的讲解和代码实现
随机推荐
自适应迁移学习核极限学习机用于预测
树莓派 4 B 拨动开关控制风扇 Rasberry Pi 4 B Add Toggle Switch for the Fan
selenium webdriver 防爬问题 C#
华硕飞行堡垒系列无线网经常显示“无法连接网络” || 一打开游戏就断网
DropBlock: 卷积层的正则化方法及复现代码
MySQL stored procedure study notes (based on 8.0)
sql常用函数
JUC锁框架——初识AQS
C# 剪裁图片内容区域
CMDB 腾讯云部分实现
微软电脑管家2.0公测版体验
mysql:列类型之float、double
事件链原理,事件代理,页面的渲染流程,防抖和节流,懒加载和预加载
FCN——语义分割的开山鼻祖(基于tf-Kersa复现代码)
golang chan
Visualization and Animation Technology (VR System)
网络安全行业是蓝景吗?
网页中常用的两种绘图技术,用canvas绘图,绘制出一个三角形,矩形,柱状图,扇形图
nacos 返回 403 unknown user 太他么坑了 源码解析
狗都能看懂的CenterNet讲解及代码复现