JavaScript is required

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

A.

a, b, F1, F2

B.

a, b

C.

F1, F2

D.

a, b, F1, F2

Trả lời:

Đáp án đúng: A


Trong C++, khi một lớp (class) kế thừa từ một lớp khác (trong trường hợp này, class B kế thừa từ class A), nó sẽ tự động có quyền truy cập (sử dụng) các thành viên (biến và phương thức) của lớp cha (class A) với điều kiện là các thành viên đó không được khai báo là private. Trong trường hợp này, các biến thành viên a, b, F1, và F2 của class A không có chỉ định mức truy cập (public, private, hoặc protected), do đó mặc định chúng là private nếu không có chỉ định khác. Vì class B kế thừa class A theo kiểu public, nên các thành viên publicprotected của class A sẽ trở thành publicprotected tương ứng trong class B. Các thành viên private của class A vẫn là private và chỉ có thể truy cập từ bên trong class A. Tuy nhiên, vì không có từ khóa nào chỉ định phạm vi truy cập (public, private, protected), và theo mặc định khi khai báo biến trong một class thì nó là private. Do đó đáp án chính xác là B có thể sử dụng được các biến a, b, F1, F2.

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