Bộ 15 - Trắc nghiệm Lập trình hướng đối tượng có đáp án

Thời gian còn lại: --:--

Câu 1: Mục đích chính của tính đóng gói (Encapsulation) trong lập trình hướng đối tượng là gì?

Câu 2: Trong quan hệ kế thừa, lớp dẫn xuất (subclass) có đặc điểm nào sau đây so với lớp cha?

Câu 3: Ghi đè phương thức (Method Overriding) xảy ra trong điều kiện nào sau đây?

Câu 4: Nạp chồng phương thức (Method Overloading) được phân biệt chủ yếu dựa trên yếu tố nào?

Câu 5: Đâu là điểm khác biệt cơ bản giữa lớp trừu tượng (Abstract Class) và Giao diện (Interface)?

Câu 6: Đặc điểm nào sau đây là đúng đối với một hàm khởi tạo (Constructor)?

Câu 7: Trong OOP, một thành phần tĩnh (static member) của một lớp có đặc điểm gì?

Câu 8: Phạm vi truy cập 'private' hạn chế quyền truy cập vào thành phần của lớp như thế nào?

Câu 9: Từ khóa 'protected' cho phép một thành phần được truy cập ở những phạm vi nào?

Câu 10: Mối quan hệ 'Has-A' (có một) giữa các đối tượng thường được triển khai thông qua cơ chế nào?

Câu 11: Vai trò chủ yếu của hàm hủy (Destructor) trong các ngôn ngữ như C++ là gì?

Câu 12: Mối quan hệ giữa Đối tượng (Object) và Lớp (Class) được hiểu như thế nào là chính xác nhất?

Câu 13: Một lớp chứa ít nhất một hàm ảo thuần túy (pure virtual function) được gọi là loại lớp nào?

Câu 14: Vấn đề 'Diamond Problem' (Vấn đề hình kim cương) nảy sinh trong ngữ cảnh nào của lập trình hướng đối tượng?

Câu 15: Từ khóa 'this' (hoặc 'self') trong phương thức của một lớp thường dùng để làm gì?

Câu 16: Theo nguyên lý SOLID, Nguyên lý Trách nhiệm đơn nhất (Single Responsibility Principle) quy định điều gì?

Câu 17: Đa hình tại thời điểm thực thi (Runtime Polymorphism) thường được hỗ trợ bởi cơ chế nào?

Câu 18: Lợi ích lớn nhất của việc lập trình dựa trên Giao diện (Programming to an Interface) là gì?

Câu 19: Trong lớp con, từ khóa 'super' (Java) hoặc 'base' (C#) thường được sử dụng nhằm mục đích gì?

Câu 20: Chữ ký phương thức (Method Signature) trong hầu hết các ngôn ngữ OOP bao gồm những thành phần nào?

Câu 21: Mục đích của việc khai báo một lớp là 'final' (trong Java) hoặc 'sealed' (trong C#) là gì?

Câu 22: Khái niệm ép kiểu ngược (Upcasting) được định nghĩa như thế nào?

Câu 23: Tính trừu tượng (Abstraction) trong lập trình hướng đối tượng giúp lập trình viên giải quyết vấn đề gì?

Câu 24: Cơ chế Garbage Collection (Bộ thu gom rác) trong các ngôn ngữ OOP hiện đại có vai trò gì?

Câu 25: Hạn chế quan trọng nhất của một phương thức tĩnh (static method) là gì?