Bộ 6 - 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: Trong lập trình hướng đối tượng, 'Lớp' (Class) được định nghĩa là gì?

Câu 2: Đặc điểm nào của OOP giúp che giấu thông tin chi tiết của cài đặt và chỉ bộc lộ những tính năng cần thiết ra bên ngoài?

Câu 3: Mối quan hệ nào dưới đây thể hiện chính xác bản chất của tính kế thừa giữa lớp con và lớp cha?

Câu 4: Hiện tượng một phương thức ở lớp con có cùng tên, danh sách tham số và kiểu trả về với phương thức ở lớp cha được gọi là gì?

Câu 5: Một lớp không thể dùng để khởi tạo đối tượng trực tiếp mà chỉ dùng làm lớp cha cho các lớp khác được gọi là gì?

Câu 6: Thành phần nào trong OOP chỉ chứa các khai báo phương thức mà không có phần thân và bắt buộc lớp thực thi phải định nghĩa lại?

Câu 7: Đặc điểm nào dưới đây mô tả đúng về hàm tạo (Constructor) trong một lớp?

Câu 8: Thuộc tính được khai báo với từ khóa 'private' trong một lớp có phạm vi truy cập như thế nào?

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

Câu 10: Một biến được khai báo là 'static' trong một lớp có đặc điểm nổi bật gì?

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

Câu 12: Nạp chồng phương thức (Method Overloading) được xác định dựa trên đặc điểm nào?

Câu 13: Từ khóa 'this' trong Java hoặc C++ thường được sử dụng để làm gì?

Câu 14: Vấn đề 'Viên kim cương' (Diamond Problem) trong OOP thường phát sinh khi ngôn ngữ lập trình hỗ trợ đặc tính nào?

Câu 15: Mối quan hệ 'has-a' (có một) giữa các đối tượng thường được thực hiện thông qua kỹ thuật nào?

Câu 16: Trong C++, một phương thức ảo thuần túy (pure virtual function) có đặc điểm gì?

Câu 17: Liên kết muộn (Dynamic Binding) liên quan mật thiết nhất đến đặc tính nào của lập trình hướng đối tượng?

Câu 18: Theo nguyên lý SOLID, nguyên lý 'Trách nhiệm duy nhất' (Single Responsibility Principle) yêu cầu điều gì?

Câu 19: Nguyên lý 'Đóng/Mở' (Open/Closed Principle) trong thiết kế hướng đối tượng phát biểu rằng?

Câu 20: Một lớp được đánh dấu là 'final' (trong Java) hoặc 'sealed' (trong C#) có ý nghĩa gì?

Câu 21: Sự khác biệt chính giữa Sao chép nông (Shallow Copy) và Sao chép sâu (Deep Copy) là gì?

Câu 22: Điểm khác biệt cơ bản về khả năng triển khai giữa Lớp trừu tượng và Giao diện (Interface) là gì?

Câu 23: Mối quan hệ 'Liên kết' (Association) giữa hai đối tượng trong lập trình hướng đối tượng mô tả điều gì?

Câu 24: Thành phần nào dưới đây thường KHÔNG được tính là một phần của chữ ký phương thức (Method Signature) trong Java?

Câu 25: Sự khác biệt lớn nhất giữa Tập hợp (Aggregation) và Hợp thành (Composition) nằm ở yếu tố nào?