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

Đề 11 - Bài tập, đề thi 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, `tính đóng gói′ (encapsulation) nhằm mục đích chính là gì?
2. Lớp trừu tượng (abstract class) khác với lớp thông thường ở điểm nào?
3. Khái niệm `tính trừu tượng′ (abstraction) trong OOP giúp giải quyết vấn đề gì?
4. Trong lập trình hướng đối tượng, `đa kế thừa′ (multiple inheritance) là gì?
5. Khái niệm nào sau đây thể hiện khả năng một đối tượng thuộc nhiều kiểu dữ liệu khác nhau?
6. Thuộc tính (attribute) của một đối tượng trong OOP còn được gọi là gì?
7. Vấn đề `diamond problem′ (vấn đề hình thoi) thường xuất hiện trong trường hợp nào?
8. Khi nào nên sử dụng `tính kế thừa′ (inheritance) thay vì `tính hợp thành′ (composition) trong thiết kế OOP?
9. Đặc điểm nào sau đây KHÔNG phải là một trong bốn trụ cột chính của lập trình hướng đối tượng?
10. Trong ngữ cảnh của `nguyên tắc thế chỗ Liskov′ (Liskov Substitution Principle), điều gì là quan trọng nhất?
11. Phương thức (method) của một đối tượng trong OOP thể hiện điều gì?
12. Đâu là một nhược điểm tiềm ẩn của việc sử dụng đa kế thừa trong OOP?
13. Trong ngữ cảnh OOP, `message passing′ (truyền thông điệp) đề cập đến điều gì?
14. Phương thức `ảo′ (virtual method) trong OOP có ý nghĩa gì?
15. Trong OOP, `lớp′ (class) và `đối tượng′ (object) có mối quan hệ như thế nào?
16. Nguyên tắc `mở rộng - đóng′ (Open∕Closed Principle) trong SOLID đề xuất điều gì?
17. Khi một lớp con ghi đè một phương thức của lớp cha, phương thức nào sẽ được thực thi khi đối tượng lớp con gọi phương thức đó?
18. Giao diện (interface) trong OOP có vai trò gì?
19. Trong OOP, thuật ngữ `is-a relationship′ (quan hệ `là một loại′) thường liên quan đến khái niệm nào?
20. Trong lập trình hướng đối tượng, `tính đa hình′ (polymorphism) được thể hiện rõ nhất qua cơ chế nào?
21. Trong UML, ký hiệu nào thường được sử dụng để biểu diễn mối quan hệ `kế thừa′ (inheritance) giữa các lớp?
22. `Coupling′ (sự liên kết) và `cohesion′ (tính gắn kết) là hai khái niệm quan trọng trong thiết kế OOP. Thiết kế tốt thường hướng tới…
23. Phương thức `khởi tạo′ (constructor) trong OOP có chức năng chính là gì?
24. Nguyên tắc `Single Responsibility Principle′ (SRP) trong SOLID phát biểu rằng:
25. Mẫu thiết kế `Factory′ (nhà máy) thuộc nhóm mẫu thiết kế nào?
26. Phương pháp lập trình hướng đối tượng nào cho phép tạo ra các lớp mới dựa trên các lớp đã tồn tại, tái sử dụng và mở rộng chức năng?
27. Đâu là lợi ích chính của việc sử dụng tính kế thừa trong lập trình hướng đối tượng?
28. Mục đích chính của `nguyên tắc đảo ngược phụ thuộc′ (Dependency Inversion Principle) là gì?
29. Sự khác biệt chính giữa `composition′ (hợp thành) và `aggregation′ (tổng hợp) trong OOP là gì?
30. Mẫu thiết kế (design pattern) `Singleton′ được sử dụng để giải quyết vấn đề gì?