不知道什么时候用到“多态”

梦回自己 2011-07-04 09:42:17
不知道什么时候用到“多态”啊
...全文
286 22 打赏 收藏 转发到动态 举报
写回复
用AI写文章
22 条回复
切换为时间正序
请发表友善的回复…
发表回复
xuan.ye 2011-07-05
  • 打赏
  • 举报
回复
关于多态这个问题,很多视频还有教材介绍的都有错误,包括张孝祥的教材。

最好的介绍,我觉得是侯捷的《深入浅出MFC》,是一本关于vc++的书,侯捷对虚函数和类的理解非常透彻。

台湾的作家还是比较靠谱的。
chen_ya_ping 2011-07-05
  • 打赏
  • 举报
回复
接口,
继承。
xuan.ye 2011-07-05
  • 打赏
  • 举报
回复
例如:基类是车,车的属性大家都知道,我们规定车有一个函数-打开车门。

如果派生类是一款新款跑车,我们重写打开车门这个函数,打开车门变为了自动打开,当然如果在新款跑车这个派生类没有重写打开车门这个函数,我们的派生类也可以打开车门,这时候打开车门就默认基类当中的打开车门。
梦回自己 2011-07-05
  • 打赏
  • 举报
回复
下面这段话是什么意思啊:
多态性不仅对派生类很重要,对基类也很重要。任何情况下,使用基类实际上都可能是在使用已强制转换为基类类型的派生类对象。基类的设计者可以预测到其基类中可能会在派生类中发生更改的方面。例如,表示汽车的基类可能包含这样的行为:当考虑的汽车为小型货车或敞篷汽车时,这些行为将会改变。基类可以将这些类成员标记为虚拟的,从而允许表示敞篷汽车和小型货车的派生类重写该行为。

indusl 2011-07-05
  • 打赏
  • 举报
回复
学习中
梦回自己 2011-07-05
  • 打赏
  • 举报
回复
多态性对基类和派生类分别有什么用啊
cf_nxcxy 2011-07-05
  • 打赏
  • 举报
回复
为什么我点击11楼的引用但是却引用了12楼的内容,求解
hupengcscs 2011-07-05
  • 打赏
  • 举报
回复
还是自己先学习学习吧!
梦回自己 2011-07-05
  • 打赏
  • 举报
回复
什么是编译时多态、什么是运行时多态啊
yhnujm##33 2011-07-05
  • 打赏
  • 举报
回复
哈哈!!!!!!!!!!!!!!!!!
yhnujm##33 2011-07-05
  • 打赏
  • 举报
回复
能变态就能多态
xuan.ye 2011-07-05
  • 打赏
  • 举报
回复
多态的方面很多,不仅仅是asp.net。

其他语言也存在类似的概念。

以一个c/s程序来讲,父类是一个窗体,而子类首先我是一个窗体,其次,子类在窗体上加上一个红色背景,这也是一个多态使用的场景。

理解了虚函数就了解了多态
梦回自己 2011-07-05
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 wxr0323 的回复:]
多态
[/Quote]
打不开这个网页啊
梦回自己 2011-07-05
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 flyerwing 的回复:]
多态分为运行时多态和编译时多态;
运行时多态:由方法重载等来表征;
编译时多态:继承,重写等来表征;
[/Quote]
什么是编译时多态、什么是运行时多态啊
梦回自己 2011-07-05
  • 打赏
  • 举报
回复
[Quote=引用 17 楼 yeness 的回复:]
例如:基类是车,车的属性大家都知道,我们规定车有一个函数-打开车门。

如果派生类是一款新款跑车,我们重写打开车门这个函数,打开车门变为了自动打开,当然如果在新款跑车这个派生类没有重写打开车门这个函数,我们的派生类也可以打开车门,这时候打开车门就默认基类当中的打开车门。
[/Quote]
是我弄错了
你说的是对的
tiancai_net 2011-07-05
  • 打赏
  • 举报
回复
哈哈!!!!!!!!!!!!!!!!!
梦回自己 2011-07-05
  • 打赏
  • 举报
回复
[Quote=引用 17 楼 yeness 的回复:]
例如:基类是车,车的属性大家都知道,我们规定车有一个函数-打开车门。

如果派生类是一款新款跑车,我们重写打开车门这个函数,打开车门变为了自动打开,当然如果在新款跑车这个派生类没有重写打开车门这个函数,我们的派生类也可以打开车门,这时候打开车门就默认基类当中的打开车门。
[/Quote]
我的代码是这样的:

好像输出的结果中没有调用父类中的IntroduceSelf()方法啊
子夜__ 2011-07-04
  • 打赏
  • 举报
回复
mamxfx 2011-07-04
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 flyerwing 的回复:]
多态分为运行时多态和编译时多态;
运行时多态:由方法重载等来表征;
编译时多态:继承,重写等来表征;
[/Quote]

+1 同意这个!!
flyerwing 2011-07-04
  • 打赏
  • 举报
回复
多态分为运行时多态和编译时多态;
运行时多态:由方法重载等来表征;
编译时多态:继承,重写等来表征;
加载更多回复(2)

62,025

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧