Đoạn mã sau có lỗi biên dịch KHÔNG? Nêu KHÔNG thì in ra màn hình kết quả nào? class Student { String sayHello() { return "Student"; } } public class Man extends Student { protected...
Đoạn mã sau có lỗi biên dịch KHÔNG? Nêu KHÔNG thì in ra màn hình kết quả nào? class Student { String sayHello() { return "Student"; } } public class Man extends Student { protected String sayHello() { return "man"; } public static void main(String[] args) { Student s = new Man(); System.out.println(s.sayHello()); } }
A. Có lỗi biên dịch.
B. Student
C. Man
D. Student Man
* Đáp án
* Hướng dẫn giải
Chọn đáp án A. Vì: phương thức sayHello() có mức truy xuất ở lớp Student là default, nhưng ở lớp con(Man) lại có mức truy xuất yếu hơn(Không cho phép điều này).