+3

Java SE 8 Oracle Certified Associate 1Z0-808 - #5

1. Câu hỏi

2. Phân tích

Đây thực sự là 1 câu hỏi khó, cần cả kiến thức về kế thừa, override, hiểu về Exception và các lớp con của nó, hiểu

abstract class Super {
     public abstract void m1() throws IOException;
}
 
class Sub extends Super {
     @Override
     public void m1() throws IOException {
         throw new FileNotFoundException();
     }
}
  • Phân tích code trong hàm main Biến s có kiểu dữ liệu Super, hàm m1 trong đó khai báo throw IOException, nhưng trong catch chỉ bắt FileNotFoundException -> Compilation error
         Super s = new Sub();
         try {
             s.m1();
         } catch (FileNotFoundException e) {
             System.out.print("M");
         } finally {
             System.out.print("N");
         }

Đáp án: image.png

3. Kết luận

Bạn có thể gõ code vào IDE để chạy lại và kiểm tra Source cho câu hỏi


All Rights Reserved

Viblo
Let's register a Viblo Account to get more interesting posts.