问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

面向对象的多态性,通俗点解释一下

发布网友 发布时间:2022-05-19 04:29

我来回答

1个回答

热心网友 时间:2024-03-26 04:01

多态是类型理论的一个概念。
意思是:
一个名字可以代表许多不同的对象,只要这些对象都有共同的父类,这样这个名字代表的不同对象就可以以不同的方式来响应同一消息。

这是抽象的解释,我觉得实际上多态就是用来将接口与实现分离的。
如:
class Tuxing { //我定义一个图形类来作为接口
public:
virtual void hua() const = 0; //绘制图形
virtual void cachu() const = 0; //擦出图形
// ....
};

class Zhengfangxing {//定义正方形作为实现
public:
void hua() const {
//实现画正方形的操作
}
void cachu() const {
//实现擦除正方形的操作
}
//实现其他接口
};

class Sanjiaoxing {//定义Sanjiaoxing作为实现
public:
void hua() const {
//实现绘制三角形的操作
}
void cachu() const {
//实现擦出三角形的操作
}
//实现其他操作
};

我的用户代码想使用这些图形,因为TuXing是接口,所以客户只需使用TuXing就行了!
//useTuxing函数使用户代码
void useTuxing(Tuxing *use) {
//use这个名字可以代表正方形,三角形等对象,
//这些对象都有一个共同的父类Tuxing
//这样这个名字代表的不同对象就可以以不同的方式
//实现同一消息
use->draw();
//....
use->cachu();
}
int main() {
Zhengfangxing one;
useTuxing(&one);
Sanjiaoxing two;
useTuxing(&two);
}

就是这样将接口与实现分离。我建议你买一些国外的书看看吧!
有问题加我扣
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
滚动广告字幕显示屏每平多少钱 滚动字幕显示屏多少钱 宝马320i超悦版时尚型怠速是多少转? 有关海关走私案件的律师 杭州汽车托运到武汉多少钱 2007年属猪男如何提升学习运势 PPT图表技巧:常用PPT图表介绍 三维产品演示动画 word单页怎么变成横向 距离矢量协议距离矢量 利用对象的什么特征可以实现对象的多态性 对象的多态性到底有什么用? 玻璃伟亚中国人有多少 什么叫做面向对象的 多态性??? 我翻开历史一查……满本都写着两个字“吃人”,反映新文化运动的哪项内容 能挂机的网游 有什么能挂机的网游 现在有什么可以挂机的网络游戏 推荐几个可以挂机的网游 有可以挂机的网游吗? 能挂机的网游~ 求一款能挂机的网游 诈骗报案需要什么证据和法律证据 婚前男方全款买房后抵押贷款 想问一下苹果手机更新淘宝网后,打不开,显示要用id密码才能用 淘宝网的苹果手机为什么卖那么便宜,才一千多,系统是真IOS的,参数配置和正品一样的。 现在什么杀毒软件可以装在win10系统上? 滴滴打车一车可坐几人? 为什么华北制药股票价格这么便宜 windows10与哪些杀毒软件兼容 中国人在玻利维亚受欢迎吗 重庆男子在玻利维亚被枪杀,是蓄意谋杀还是意外躺枪? 玻利维亚华人论坛你好,我是一名即将去玻利维亚的中国青年。请问在玻利维亚有什么可以发展的有什么生意可 重庆男子在玻利维亚被枪杀,凶手疑同为中国籍,出门在外如何处理纠纷... 中国公民去玻璃维亚需要鉴证吗 java对象多态性的问题 简述面向对象中的多态性的概念? 面向对象方法的多态性是指一个对象在不同运行环境中可以有不同的变体这句话对吗? 求神之豆腐这张图片无水印的 中国人如何去玻利维亚的乌尤尼盐沼 米白醋洗脸好吗,怎样用 九米白醋洗脸可以吗? 有没有什么好寓意的男英文名,字母5个左右? 寓意好一点儿的英文名 长17cm宽10cm的纸尺寸多少 17厘米长9.4厘米宽的纸是啥规格? 求学霸求解 塑料袋一般是什么材料做的? 长27.8厘米,宽19.8厘米是多大尺寸的纸 关于审计中银行对账单问题