2009年2月11日 星期三

第84題

Given:
11. class Alpha{
12. public void foo(){System.out.print("Afoo ");}
13. }
14. public class Beta extends Alpha{
15. public void foo(){System.out.print("Bfoo ");}
16. public static void main(String[] args){
17. Alpha a = new Beta();
18. Beta b = (Beta)a;
19. a.foo();
20. b.foo();
21. }
22. }
What is the result?
A. Afoo Afoo
B. Afoo Bfoo
C. Bfoo Afoo
D. Bfoo Bfoo
E. Compilation fails.
F. An exception is thrown at runtime.
答案:D
參考:7-9 多型
-----------------------------------------------------------
17. Alpha a = new Beta();
18. Beta b = (Beta)a;
19. a.foo(); //15. public void foo(){System.out.print("Bfoo ");}
20. b.foo(); //15. public void foo(){System.out.print("Bfoo ");}

沒有留言:

張貼留言