锁定老帖子 主题:JAVA里多态的理解
精华帖 (3) :: 良好帖 (0) :: 新手帖 (2) :: 隐藏帖 (8)
|
|
---|---|
作者 | 正文 |
发表时间:2008-10-17
最后修改:2010-03-29
Father{ 视察(){ System.out.println("大家好好工作啊,你们辛苦了!"); System.out.println("基层的每个官员给我贿赂300块大洋,我保你们平安"); } } 现在我们创建对象 Father father = new Father(); father.视察();//工作做完了,并且还捞了不少钱 现在老爹不想干了,想退休了,儿子就可以继任啦,但是以前的基层官员可没退休,这群基层的只在乎你是不是有这个头衔; 根据中国封建的世袭制,孩子是有这个头衔的。为了让儿子有这个头衔,我们创建对象的时候就采用了继承机制 Son extends Father{} Son son = new Son(); son.视察();//(用老子的方法)工作做完了,又捞了不少钱 孩子们都继承父亲。这样儿子就有了老爹的职能了。但是儿子每次捞的钱数和老爹每次的一样。孩子心想啊,我要比老爹捞的多一点,不然人家骂我无能了。所以现在孩子都不用老爹的工作方式了,都改成自己的 Sonx extends Father{ 视察(){ System.out.println("大家好好工作啊,你们辛苦了!"); System.out.println("以后基层的每个官员给我贿赂600块大洋,我保你们平安"); } 玩乐(){ System.out.println("今天去了3家青楼!"); } } Sonx sonx = new Sonx(); sonx.视察();//(用自己的方法)工作做完了,又捞了不少钱 孩子们都覆盖了老爹的工作方式了,这样就可以打捞一笔了。 继承的方式说完了,现在开始看看多态的方式吧。 现在孩子要去觐见皇帝老儿了,皇帝老儿以前只给孩子他爹授勋过而已,也只在乎你这个小屁孩是不是我那时候给授勋的那个大臣的孩子。所以孩子们就不得不“转型”!既然皇帝老儿只认身份不认人,那我就“上转型”成我老爹不就行了!于是孩子开始转型了 Father son2father = son; 这样皇帝老儿也知道了这个小毛孩是谁了,也给予这个小屁孩觐见的功能了。这时候皇帝老儿问孩子:“你每次去视察的时候每个官员收多少钱啊?”,不贪的(没有重写视察方法的那个孩子)son就回答说:“300块大洋”;贪的那个孩子(重写了视察方法的那个孩子)回答:“我比较上进,要求每个收600块大洋”。皇帝老儿点点头就让这群小屁孩回去了。 现在,老子觉得在家里呆着无聊,还想出去视察工作。这可不好办了,现在人家认的是儿子而已,人家不认我了,我都已经把权利都交给孩子了,这可怎么办呢?我可以也转转型呀? Sonx father2sonx = (Sonx)father; father2son .视察(); 老爹可以出去贪污受贿了?你觉得人可以返老还童么?你是上帝么?上帝是你么? father2sonx.视察(); father2sonx.玩乐(); 看到这里你觉得这个老子贪心么?很贪心是吧!!!既然你觉得这样的老子很贪心,为什么让他这么干呢?我看不下去,相信你也看不下去。外国人更是看不下去了:“娘希匹,不准你转,你以为上帝是你自己的啊?要转我就给你抛异常(java.lang.ClassCastException)” (这里多态还没讲完^_^先和稀粥去,不拉稀的时候再过来这里吹吹鼻子) 继续说说多态吧。好久没来了,先给这里打扫打扫灰尘,上上香,各位大神走过的同时也给我留下点建议,学习学习,共同进步~~~ 说到多态就要提到接口了,我觉得接口和抽象类的设计初衷是为多态服务的。怎么理解呢,先来看看需求吧(万物的发展都是以需求做驱动的)。继续上面的例子--> 老子就快死翘翘了,但是老子不甘心自己死了就因此没有了官位啊(先回家了^*^) 继续理解变态(多态)设计 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2008-10-20
有意思,很形象。
|
|
返回顶楼 | |
发表时间:2008-10-21
真的很形象,也很有意思!讲的很贴切!
|
|
返回顶楼 | |
发表时间:2008-10-21
overload 和overwrite的多态,对于设计和维护来说不是一个好事情
|
|
返回顶楼 | |
发表时间:2008-10-21
呵呵 很形象
|
|
返回顶楼 | |
发表时间:2008-10-21
哈哈,有趣,顶了~
不过多态这个问题,我这菜鸟还是挺迷糊的。。 |
|
返回顶楼 | |
发表时间:2008-10-23
草
一句话不就解决了 多态 就是 重写和重载! |
|
返回顶楼 | |
发表时间:2008-10-24
多态用处可不少,不止重写和重载那么简单吧
|
|
返回顶楼 | |
发表时间:2008-10-24
继承是看懂了,但这个多态就有点迷糊啦
|
|
返回顶楼 | |
发表时间:2008-10-24
说的十分形象啊 我看懂了继承 不知道可以不可以复制到我电脑上慢慢看多态~~~
|
|
返回顶楼 | |