JavaScript is required
Danh sách đề

400+ câu hỏi trắc nghiệm Lập trình hướng đối tượng kèm đáp án và lời giải minh họa - Đề 4

50 câu hỏi 60 phút

Thẻ ghi nhớ
Luyện tập
Thi thử
Nhấn để lật thẻ
1 / 50

Hãy xem xét đoạn mã sau: 

class A

{

int a,b;
public:
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.

F1, F2

C.

a, b

D.

Không sử dụng được biến thành viên nào

Đáp án
Trong C++, khi một lớp (class) kế thừa từ một lớp khác (ở đây, class B kế thừa từ class A), các thành viên của lớp cơ sở (class A) sẽ được kế thừa vào lớp dẫn xuất (class B) theo các mức truy cập khác nhau: - Các thành viên `private`: Không thể truy cập trực tiếp từ lớp dẫn xuất. - Các thành viên `protected`: Có thể truy cập từ lớp dẫn xuất. - Các thành viên `public`: Có thể truy cập từ bất kỳ đâu. Trong đoạn mã trên: - `a` và `b` được khai báo mà không có từ khóa chỉ định mức truy cập, mặc định chúng là `private` trong C++ (nếu khai báo trong struct thì mặc định là public). - `F1` và `F2` được khai báo là `public`. Vì class B kế thừa class A theo kiểu `public`, nên các thành viên `public` của A sẽ trở thành `public` trong B. Các thành viên `private` của A không thể truy cập trực tiếp từ B. Do đó, B có thể sử dụng `F1` và `F2` của A. Tuy nhiên, B không thể truy cập trực tiếp `a` và `b` vì chúng là `private` trong A.

Danh sách câu hỏi:

Lời giải:
Đáp án đúng: B
Trong C++, khi một lớp (class) kế thừa từ một lớp khác (ở đây, class B kế thừa từ class A), các thành viên của lớp cơ sở (class A) sẽ được kế thừa vào lớp dẫn xuất (class B) theo các mức truy cập khác nhau: - Các thành viên `private`: Không thể truy cập trực tiếp từ lớp dẫn xuất. - Các thành viên `protected`: Có thể truy cập từ lớp dẫn xuất. - Các thành viên `public`: Có thể truy cập từ bất kỳ đâu. Trong đoạn mã trên: - `a` và `b` được khai báo mà không có từ khóa chỉ định mức truy cập, mặc định chúng là `private` trong C++ (nếu khai báo trong struct thì mặc định là public). - `F1` và `F2` được khai báo là `public`. Vì class B kế thừa class A theo kiểu `public`, nên các thành viên `public` của A sẽ trở thành `public` trong B. Các thành viên `private` của A không thể truy cập trực tiếp từ B. Do đó, B có thể sử dụng `F1` và `F2` của A. Tuy nhiên, B không thể truy cập trực tiếp `a` và `b` vì chúng là `private` trong A.
Lời giải:
Đáp án đúng: C
Câu hỏi kiểm tra kiến thức về kế thừa trong C++ và cách truy cập các thành viên của lớp cha từ lớp con. Trong đoạn code, `Lop2` kế thừa `Lop1` theo kiểu `public`. Điều này có nghĩa là các thành viên `public` của `Lop1` vẫn là `public` trong `Lop2`. Do đó, đối tượng `objLop2` của `Lop2` có thể trực tiếp truy cập các thành viên `public` của `Lop1` (ví dụ: `nhap()`) bằng toán tử `.`. * **Đáp án 1 (`objLop2.nhap()`):** Đây là cách truy cập đúng vì `nhap()` là một hàm `public` của `Lop1` và `Lop2` kế thừa `Lop1` theo kiểu `public`, nên `objLop2` có thể gọi `nhap()` trực tiếp. * **Đáp án 2 (`objLop2->nhap()`):** Cách này dùng toán tử `->`, thường được sử dụng để truy cập thành viên của một đối tượng thông qua con trỏ. Tuy nhiên, `objLop2` không phải là con trỏ, mà là một đối tượng trực tiếp. * **Đáp án 3 (`objLop2.p ->nhap( ) objLop2.nhap()`):** `objLop2.p` là một con trỏ đến đối tượng `Lop1`. Tuy nhiên, việc gọi `objLop2.nhap()` sau đó là thừa và không liên quan, và cách viết này không hợp lệ. * **Đáp án 4 (`Tất cả đều sai`):** Vì đáp án 1 đúng, nên đáp án này sai. Vậy, đáp án đúng là `objLop2.nhap()`.
Lời giải:
Đáp án đúng: A
Lớp `Lop2` kế thừa từ lớp `Lopl` theo kiểu `public`, điều này có nghĩa là tất cả các thành viên `public` của `Lopl` vẫn là `public` trong `Lop2`. Do đó, đối tượng `objLop2` của lớp `Lop2` có thể trực tiếp truy cập các thành viên `public` của `Lopl`, bao gồm cả hàm `nhap()`. Phương án 1 có vẻ đúng nhưng không hoàn toàn tối ưu. Phương án 3 sai vì toán tử `^` không được sử dụng để truy cập thành viên của lớp. Vì vậy, phương án đúng nhất là objLop2.nhap().
Lời giải:
Đáp án đúng: A

Lớp Lop2 kế thừa từ lớp Lop1. Do đó, mọi thành phần public của Lop1 đều có thể được truy cập thông qua đối tượng của Lop2. Trong trường hợp này, hàm nhap() là một hàm public của Lop1. Vì vậy, đối tượng objLop2 của Lop2 có thể gọi hàm nhap() bằng cú pháp objLop2.nhap().

Câu 5:

Khi khai báo và xây dựng thành công lớp đối tượng, để truy cập vào thành phần của lớp ta phải:

Lời giải:
Đáp án đúng: A
Khi đã khai báo và xây dựng thành công một lớp đối tượng, ta có thể truy cập vào các thành phần (thuộc tính và phương thức) của lớp đó thông qua cả tên lớp (đối với các thành viên static) và tên đối tượng của lớp (đối với các thành viên instance). Do đó, đáp án đúng là "Truy cập thông qua tên lớp hay tên đối tượng của lớp".

Câu 6:

Thành phần public của lớp là thành phần:

Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP

Câu 7:

Hàm tạo trong ngôn ngữ C++:

Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP

Câu 8:

Hàm hủy có mấy loại:

Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP

Câu 11:

Trong một lớp có thể:

Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP

Câu 12:

Trong đa kế thừa có thể kế thừa tối đa:

Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP

Câu 13:

Khai báo các phương thức trong lớp cơ sở trừu tượng phải:

Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP

Câu 14:

Các trường hợp trùng tên trong kế thừa là:

Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP

Câu 15:

Hãy cho biết thành phần thuộc tính của lớp đa thức xây dựng bằng mảng:

Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP

Câu 16:

 Cho lớp Dathuc, để thực hiện khai báo sau mà không lỗi:

void main()

{

Dathuc

D1,D2(D1);

}

Ta cần xây dựng:

Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP

Câu 17:

Tính chất kế thừa chỉ ra rằng khi lớp A kế thừa lớp B thì:

Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP

Câu 18:

Khi khai báo, xây dựng lớp các phương thức thường được khai báo trong phạm vi public để:

Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP

Câu 19:

 Cho lớp Điểm như sau: Trong lớp Điểm trên thì KC2D có tên gọi là:

                                                                        

Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP

Câu 22:

Giả sử cho các lớp như trong khai báo như trên. Kết quả hiển thị của đoạn chương trình là:

                                                                     

Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP

Câu 25:

Cho khai báo như hình trên, khai báo là:

                                                                

Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP

Câu 26:

 Cho khai báo như trên, câu nhận định đúng là:

                                                                

Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP

Câu 27:

Để đếm số kí tự trong một chuỗi thì dùng hàm nào sau đây:

Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP

Câu 30:

Trong kế thừa. Lớp cha có thuật ngữ tiếng Anh là:
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP

Câu 31:

Trong một chương trình có thể xây dựng tối đa bao nhiêu lớp?
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP

Câu 32:

Thuộc tính của lớp là:
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP

Câu 33:

Hàm tạo có đặc điểm gì?
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP

Câu 35:

Hàm hủy có mấy loại:
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP

Câu 37:

Cho biết cách khai báo phương thức ảo trong C++ nào sau đây là đúng:
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP

Câu 38:

Cho đoạn chương trình sau:
class Trai_cay
{
private:
char mauvo[5]
char mauhat[3]
char hinhdang[30]
public:
void Hienthi();
};
Cần xây dựng lớp Trai_dua_hau. Quan hệ giữa lớp Trai_cay và lớp Trai_dua_hau là:
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP

Câu 39:

Cần xây dựng lớp đường thẳng y = ax+b. Thuộc tính của lớp đường thẳng này được xác định là:
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP

Câu 40:

Xây dựng lớp điểm trong hệ toạ độ Oxyz các thuộc tính của lớp là:
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP

Câu 41:

Hãy cho biết trong các ví dụ sau ví dụ nào thể hiện sự kế thừa:
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP

Câu 42:

Khi khai báo, xây dựng lớp các phương thức thường được khai báo trong phạm vi public để:
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP

Câu 43:

Cho lớp Time với ngôn ngữ C++ như sau:
class time {
int hour,min, sec;
public:
void addHour(int h);
}
Khi xây dựng phương thức addHour bên ngoài lớp Time ta phải viết là:
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP

Câu 45:

Cho đoạn chương trình trên, câu nhận định đúng cho đoạn chương trình trên là:
Cho đoạn chương trình trên, câu nhận định đúng cho đoạn chương trình trên là: (ảnh 1)
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP

Câu 46:

Cho lớp Lophoc được khai báo như trên, với khai báo public Lophoc (string str); là khai báo:
Cho lớp Lophoc được khai báo như trên, với khai báo public Lophoc (string str); là khai báo: (ảnh 1)
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP

Câu 48:

Một bạn xây dựng lại lớp đường thẳng AX+BY+C=0 như trên, và bạn đó có xây dựng hàm tạo cho lớp tại dòng số 4. Ta nhận thấy các tham số truyền vào có tên trùng với tên thuộc tính của lớp (A,B,C). Để phân biệt chúng ta sử dụng:
Một bạn xây dựng lại lớp đường thẳng AX+BY+C=0 như trên, và bạn đó có xây dựng hàm tạo cho lớp tại dòng số 4.  (ảnh 1)
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP

Câu 49:

Hàm mà bất kỳ lớp nào cũng có là:
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP

Câu 50:

Cho khai báo như hình trên, khai báo là:
Cho khai báo như hình trên, khai báo là: (ảnh 1)
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP