读书人

多态事例

发布时间: 2012-10-09 10:21:45 作者: rapoo

多态例子

一)相关类

多态事例多态事例class?A?...{
多态事例多态事例?????????public?String?show(D?obj)...{
多态事例????????????????return?("A?and?D");
多态事例?????????}?
多态事例多态事例?????????public?String?show(A?obj)...{
多态事例????????????????return?("A?and?A");
多态事例?????????}?
多态事例}?
多态事例多态事例class?B?extends?A...{
多态事例多态事例?????????public?String?show(B?obj)...{
多态事例????????????????return?("B?and?B");
多态事例?????????}
多态事例多态事例?????????public?String?show(A?obj)...{
多态事例????????????????return?("B?and?A");
多态事例?????????}?
多态事例}
多态事例多态事例class?C?extends?B...{}?
多态事例多态事例class?D?extends?B...{}?

(二)问题:以下输出结果是什么?

多态事例????????A?a1?=?new?A();
多态事例????????A?a2?=?new?B();
多态事例????????B?b?=?new?B();
多态事例????????C?c?=?new?C();?
多态事例????????D?d?=?new?D();?
多态事例????????System.out.println(a1.show(b));?? ①
多态事例????????System.out.println(a1.show(c));?? ②
多态事例????????System.out.println(a1.show(d));?? ③
多态事例????????System.out.println(a2.show(b));?? ④
多态事例????????System.out.println(a2.show(c));?? ⑤
多态事例????????System.out.println(a2.show(d));?? ⑥
多态事例????????System.out.println(b.show(b));???? ⑦
多态事例????????System.out.println(b.show(c));?????⑧
多态事例????????System.out.println(b.show(d));???? ⑨????

(三)答案

????????????? ①?? A?and A
????????????? ②?? A and A
????????????? ③?? A and D
??????????????④?? B and A
????????????? ⑤?? B and A
????????????? ⑥?? A and D
????????????? ⑦?? B and B
????????????? ⑧?? B and B
????????????? ⑨?? A and D

?

转摘http://blog.csdn.net/thinkGhoster/article/details/2307001

读书人网 >编程

热点推荐