Đề 2 – Đề thi, câu hỏi trắc nghiệm online Lập trình hướng đối tượng

Đề 2 - Đề thi, câu hỏi trắc nghiệm online Lập trình hướng đối tượng

1. Trong lập trình hướng đối tượng, mục đích chính của việc sử dụng 'unit testing' (kiểm thử đơn vị) là gì?
2. Trong lập trình hướng đối tượng, 'cohesion' (tính gắn kết) đề cập đến điều gì?
3. Trong lập trình hướng đối tượng, 'refactoring' (tái cấu trúc) là gì?
4. Đâu là mục đích chính của việc sử dụng 'design patterns' (mẫu thiết kế) trong lập trình hướng đối tượng?
5. Lợi ích chính của việc sử dụng 'access modifiers' (công cụ sửa đổi truy cập) như 'private', 'protected', và 'public' là gì?
6. Đặc điểm nào sau đây là quan trọng nhất của tính đóng gói (encapsulation) trong lập trình hướng đối tượng?
7. Khi nào nên sử dụng 'abstract class' (lớp trừu tượng) thay vì 'interface' (giao diện)?
8. Trong lập trình hướng đối tượng, 'singleton pattern' (mẫu singleton) được sử dụng để làm gì?
9. Trong lập trình hướng đối tượng, 'interface' (giao diện) khác với 'abstract class' (lớp trừu tượng) như thế nào?
10. Phương thức nào sau đây thường được sử dụng để giải phóng tài nguyên mà một đối tượng nắm giữ khi đối tượng đó không còn được sử dụng nữa?
11. Trong lập trình hướng đối tượng, 'coupling' (tính liên kết) đề cập đến điều gì?
12. Trong lập trình hướng đối tượng, 'factory pattern' (mẫu factory) được sử dụng để làm gì?
13. Một 'namespace' (không gian tên) được sử dụng để làm gì trong lập trình hướng đối tượng?
14. Trong lập trình hướng đối tượng, 'association' (kết hợp) giữa hai lớp biểu thị điều gì?
15. Trong lập trình hướng đối tượng, 'Liskov Substitution Principle' (Nguyên tắc thay thế Liskov) nói về điều gì?
16. Phương pháp nào sau đây giúp giảm sự phụ thuộc giữa các lớp trong lập trình hướng đối tượng?
17. Trong lập trình hướng đối tượng, mục đích của việc sử dụng 'SOLID principles' là gì?
18. Trong lập trình hướng đối tượng, 'decorator pattern' (mẫu decorator) được sử dụng để làm gì?
19. Trong lập trình hướng đối tượng, 'tính đa hình' (polymorphism) đề cập đến khả năng nào?
20. Điều gì xảy ra khi một phương thức 'virtual' (ảo) được gọi thông qua một con trỏ hoặc tham chiếu đến lớp cha, nhưng đối tượng thực tế là một thể hiện của lớp con?
21. Trong lập trình hướng đối tượng, 'dependency injection' (tiêm phụ thuộc) là gì?
22. Khi nào nên sử dụng 'composition' (hợp thành) thay vì 'inheritance' (kế thừa) trong thiết kế hướng đối tượng?
23. Ưu điểm chính của việc sử dụng 'encapsulation' (tính đóng gói) trong lập trình hướng đối tượng là gì?
24. Sự khác biệt chính giữa 'aggregation' (tập hợp) và 'composition' (hợp thành) trong lập trình hướng đối tượng là gì?
25. Điều gì KHÔNG phải là một lợi ích chính của việc sử dụng tính kế thừa (inheritance) trong lập trình hướng đối tượng?
26. Trong lập trình hướng đối tượng, 'Law of Demeter' (Luật Demeter) khuyến nghị điều gì?
27. Trong ngữ cảnh của lập trình hướng đối tượng, 'lớp trừu tượng' (abstract class) là gì?
28. Trong lập trình hướng đối tượng, 'covariance' (hiệp biến) và 'contravariance' (phản biến) liên quan đến điều gì?
29. Trong lập trình hướng đối tượng, 'observer pattern' (mẫu observer) được sử dụng để làm gì?
30. Trong lập trình hướng đối tượng, 'method overriding' (ghi đè phương thức) là gì?