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

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

1. Khái niệm nào sau đây là trụ cột cơ bản của lập trình hướng đối tượng, cho phép gói gọn dữ liệu và phương thức hoạt động trên dữ liệu đó vào trong một đơn vị duy nhất?
2. Giao diện (interface) trong OOP được sử dụng để làm gì?
3. Điểm khác biệt chính giữa lớp trừu tượng (abstract class) và giao diện (interface) là gì?
4. Ví dụ nào sau đây thể hiện rõ nhất tính đa hình (polymorphism) trong OOP?
5. Kiểu quan hệ nào sau đây thể hiện mối quan hệ 'has-a' (có một) trong OOP?
6. Trong lập trình hướng đối tượng, thuật ngữ 'coupling' (kết nối) đề cập đến điều gì?
7. Phương thức khởi tạo (constructor) trong lớp có vai trò gì?
8. Tính kế thừa (inheritance) trong OOP mang lại lợi ích chính nào?
9. Nguyên tắc 'Dependency Inversion Principle' (DIP) trong SOLID khuyến khích điều gì?
10. Phương thức tĩnh (static method) trong lớp có đặc điểm gì?
11. Tính đa hình (polymorphism) trong OOP thể hiện điều gì?
12. Trong lập trình hướng đối tượng, 'thành phần' (composition) thể hiện mối quan hệ nào giữa các lớp?
13. Trong lập trình hướng đối tượng, 'lớp' (class) đóng vai trò gì?
14. Phương thức 'getter' và 'setter' được sử dụng để làm gì trong OOP?
15. Phương pháp 'Dependency Injection' (DI) trong OOP giúp đạt được mục tiêu chính nào?
16. Phương thức trừu tượng (abstract method) là gì?
17. Nguyên tắc 'Single Responsibility Principle' (SRP) trong SOLID phát biểu điều gì?
18. Nguyên tắc 'SOLID' trong OOP là tập hợp các nguyên tắc thiết kế hướng đến mục tiêu nào?
19. Trong OOP, lỗi 'NullPointerException' thường xảy ra khi nào?
20. Kiểu quan hệ nào sau đây thể hiện mối quan hệ 'is-a' (là một loại) trong OOP?
21. Nguyên tắc 'Liskov Substitution Principle' (LSP) trong SOLID liên quan đến vấn đề gì?
22. Thuật ngữ 'cohesion' (kết dính) trong OOP đề cập đến điều gì?
23. Nguyên tắc 'Open/Closed Principle' (OCP) trong SOLID khuyến khích điều gì?
24. Mục đích chính của việc sử dụng 'design patterns' (mẫu thiết kế) trong OOP là gì?
25. Lớp trừu tượng (abstract class) khác với lớp thông thường như thế nào?
26. Trong OOP, 'tính đóng gói' (encapsulation) đạt được chủ yếu thông qua cơ chế nào?
27. Trong ngữ cảnh của lập trình hướng đối tượng, 'refactoring' (tái cấu trúc mã) là gì?
28. Lợi ích của việc sử dụng 'composition' (thành phần) thay vì 'inheritance' (kế thừa) trong một số trường hợp là gì?
29. Nguyên tắc 'Interface Segregation Principle' (ISP) trong SOLID đề xuất giải pháp nào?
30. Đối tượng (object) trong lập trình hướng đối tượng là gì?