Given:
11. class A{
12. public void process(){System.out.print("A, ");}
13. class B extends A{
14. public void process() throws IOException{
15. super.process();
16. System.out.print("B, ");
17. throw new IOException(),
18. }
19. public static void main(String[] args){
20. try{new B().process();}
21. catch(IOException e){System.out.println("Exception");}
22. }
What is the result?
A. Exception
B. A, B, Exception
C. Compilation fails because of an error in line 20.
D. Compilation fails because of an error in line 14.
E. A NullPointerException is thrown at runtime.
答案:D
參考:9-2 Java例外事件與處理機制、9-3 使用throw自行產生例外事件、9-5 使用throws拋出例外事件。
-----------------------------------
14行 子類別B 裡的process 要改寫 父類別A的 process, 但 父類別的 process 並沒有 throws IOException
沒有留言:
張貼留言