Hãy xem xét đoạn mã sau:
class A
{
int a,b;
float F1,F2;
};
class B:public A
{
}
Hỏi: B sử dụng được các biến thành viên nào của A
class A
{
int a,b;
float F1,F2;
};
class B:public A
{
}
Hỏi: B sử dụng được các biến thành viên nào của A
Trả lời:
Đáp án đúng: A
Trong đoạn mã C++ đã cho, lớp `B` kế thừa từ lớp `A` theo chế độ `public`. Điều này có nghĩa là tất cả các thành viên `public` và `protected` của lớp `A` đều trở thành thành viên `public` của lớp `B`. Vì tất cả các biến thành viên `a`, `b`, `F1`, và `F2` của lớp `A` đều không được khai báo là `private`, chúng mặc định là `public` (nếu được khai báo trong struct) hoặc cần phải xem xét phạm vi truy cập nếu khai báo trong class. Trong trường hợp này, do lớp A được khai báo bằng từ khóa class, nên mặc định các biến thành viên là private. Tuy nhiên, vì lớp B kế thừa từ lớp A theo kiểu public nên vẫn có thể truy cập các biến a, b, F1, F2 thông qua các phương thức public hoặc protected của lớp A. Tuy nhiên, nếu câu hỏi hỏi "B sử dụng được các biến thành viên nào của A", thì phải hiểu là B kế thừa và có thể sử dụng trực tiếp (như là biến thành viên của B). Vì vậy, lớp B sẽ được kế thừa tất cả các biến thành viên `a`, `b`, `F1`, và `F2` từ lớp `A`.
Cùng ôn thi với bộ câu hỏi trắc nghiệm môn Lập trình hướng đối tượng có đáp án mà tracnghiem.net chia sẽ dưới đây, nhằm giúp các bạn sinh viên chuyên ngành chuẩn bị cho kì thi sắp tới.
50 câu hỏi 60 phút
Câu hỏi liên quan

FORM.08: Bộ 130+ Biểu Mẫu Thống Kê Trong Doanh Nghiệp

FORM.07: Bộ 125+ Biểu Mẫu Báo Cáo Trong Doanh Nghiệp

FORM.06: Bộ 320+ Biểu Mẫu Hành Chính Thông Dụng

FORM.05: Bộ 330+ Biểu Mẫu Thuế - Kê Khai Thuế Mới Nhất

FORM.04: Bộ 240+ Biểu Mẫu Chứng Từ Kế Toán Thông Dụng
