+2

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
Hãy đăng ký một tài khoản Viblo để nhận được nhiều bài viết thú vị hơn.
Đăng kí