Đề 12 – Bài tập, đề thi trắc nghiệm online Lập trình hướng đối tượng

Đề 12 - Bài tập, đề thi trắc nghiệm online Lập trình hướng đối tượng

1. `Đối tượng′ (object) trong OOP là gì?
2. Đặc điểm nào sau đây KHÔNG phải là trụ cột chính của lập trình hướng đối tượng (OOP)?
3. Ưu điểm của việc sử dụng `property′ (thuộc tính) thay vì truy cập trực tiếp vào biến thành viên (member variable) của đối tượng là gì?
4. Trong OOP, `đóng gói′ (encapsulation) đề cập đến điều gì?
5. Mối quan hệ `có một′ (has-a relationship) trong OOP thường được thể hiện thông qua cơ chế nào?
6. Trong OOP, `tính liên kết lỏng lẻo′ (loose coupling) là một mục tiêu thiết kế tốt. Điều này có nghĩa là gì?
7. Trong ngữ cảnh của SOLID principles, chữ `S′ trong SOLID đại diện cho nguyên tắc nào?
8. Thuật ngữ nào mô tả việc một lớp con có thể định nghĩa lại một phương thức đã được định nghĩa trong lớp cha?
9. Mẫu thiết kế Adapter trong OOP giúp giải quyết vấn đề gì?
10. Mẫu thiết kế (design pattern) Singleton trong OOP được sử dụng để làm gì?
11. Mẫu thiết kế Decorator trong OOP nhằm mục đích gì?
12. Khái niệm `kế thừa′ (inheritance) trong OOP mang lại lợi ích nào sau đây?
13. Mối quan hệ `là một′ (is-a relationship) trong OOP thường được thể hiện thông qua cơ chế nào?
14. Phương thức đặc biệt nào trong lớp được gọi tự động khi một đối tượng được tạo ra?
15. Mẫu thiết kế Observer trong OOP được sử dụng để làm gì?
16. Phương thức nào trong lớp được gọi tự động ngay trước khi một đối tượng bị hủy khỏi bộ nhớ?
17. Trong SOLID principles, chữ `I′ trong SOLID đại diện cho nguyên tắc nào?
18. Khái niệm `giao diện′ (interface) trong OOP khác với `lớp trừu tượng′ (abstract class) ở điểm nào chính?
19. Lợi ích chính của việc sử dụng OOP so với lập trình hướng thủ tục (procedural programming) là gì?
20. Nguyên tắc `Open∕Closed Principle′ trong SOLID nói về điều gì?
21. Trong OOP, `lớp′ (class) được hiểu là gì?
22. Điểm khác biệt chính giữa `nạp chồng phương thức′ (method overloading) và `ghi đè phương thức′ (method overriding) là gì?
23. Nhược điểm tiềm ẩn của việc sử dụng kế thừa sâu trong OOP là gì?
24. Trong lập trình hướng đối tượng, `composition′ (tổng hợp) thường được ưu tiên hơn `inheritance′ (kế thừa) trong trường hợp nào?
25. Mục đích chính của tính `trừu tượng′ (abstraction) trong OOP là gì?
26. Trong OOP, `tính trừu tượng dữ liệu′ (data abstraction) có liên quan chặt chẽ đến khái niệm nào?
27. Nguyên tắc `Liskov Substitution Principle′ (LSP) phát biểu rằng:
28. Nguyên tắc `Dependency Inversion Principle′ (DIP) trong SOLID khuyến khích điều gì?
29. Mẫu thiết kế Factory Method trong OOP giải quyết vấn đề gì?
30. Tính `đa hình′ (polymorphism) trong OOP thể hiện rõ nhất qua cơ chế nào?