作者upo (来呀)
站内java
标题[问题] 一个多形的问题
时间Sun May 4 22:19:19 2008
4. Given the following Java code: [10 points]
10. interface A { public int getValue();}
11. class B implements A {
12. public int getValue() { return 1;}
13. }
14. class C extends B {
15. // insert code here16. }
What three code fragments individually at line 15, make used of polymorphism?
(Choose three)
(A) public void add (C c) {c.getValue();}
(B) public void add (B b) {b.getValue();}
(C) public void add (A a) {a.getValue();}
(D) public void add (A a, B b) {a.getValue();}
(E) public void add (C c1, C c2) {c1.getValue();}
ANS:__ (B), (C), (D)__
请问是否有人可以跟我解释一下
为什麽答案是BCD吗
我完全不了解这样跟多形有什麽关系耶@@
拜托了~感谢万分
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 218.168.193.40
1F:推 AI3767:真糟糕>< 我还以为是abe... 我得加强一下观念了(泪) 05/04 22:59
2F:推 H45:直观啊,参数型态没有 C 的就是 BCD 05/05 00:22
3F:推 silver8250:因为只有 BCD 可以在 runtime 时期决定parameter型别 05/05 22:59
4F:推 scarsnight:因为C没有实作getValue() interface,是由其父类别实作 05/06 16:20