Hãy cho biết kết quả khi chạy đoạn chương trình sau? class Student { public int getAge() { return 10; } } public class Man extends Student { public int getAge(int added) { return s...

Câu hỏi :

Hãy cho biết kết quả khi chạy đoạn chương trình sau?
class Student {
public int getAge() {
return 10;
}
}
public class Man extends Student {
public int getAge(int added) {
return super.getAge() + added;
}
public static void main(String[] args) {
Man s = new Man();
System.out.println(s.getAge());
System.out.println(s.getAge());
}
}

A. 10 11

B. 10 10

C. 11 11

D. Không in gì và báo lỗi

* Đáp án

* Hướng dẫn giải

Chọn đáp án B. Vì:+ Lệnh đầu tiên trong hàm main() sẽ sinh ra đối tượng s từ lớp Man.
+ Lệnh thứ 2 của hàm main sẽ gọi phương thức getAge() của đối tượng s, tuy nhiên s kế thừa từ lớp Student do đó sẽ triệu gọi phương thức getAge của lớp Student => in ra 10
+ Lệnh thứ 3 của hàm main() sẽ gọi phương thức getAge() của đối tượng s => gọi đến phương thức getAge()

Câu hỏi trên thuộc đề trắc nghiệm dưới đây !

200 Câu hỏi trắc nghiệm lập trình Java có đáp án !!

Số câu hỏi: 199

Copyright © 2021 HOCTAP247