Bộ 5 - 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, đặc điểm nào cho phép một đối tượng có thể phân biệt với các đối tượng khác ngay cả khi chúng có cùng giá trị các thuộc tính?

Câu 2: Khái niệm 'Lớp' (Class) trong lập trình hướng đối tượng được hiểu tốt nhất là gì?

Câu 3: Mục đích chính của 'Tính đóng gói' (Encapsulation) là gì?

Câu 4: Khả năng một lớp con sử dụng lại các thuộc tính và phương thức của lớp cha được gọi là gì?

Câu 5: Hiện tượng một phương thức có cùng tên, cùng tham số nhưng có cách thực hiện khác nhau ở các lớp khác nhau trong quan hệ kế thừa được gọi là gì?

Câu 6: Làm thế nào để phân biệt giữa 'Nạp chồng phương thức' (Method Overloading) và 'Ghi đè phương thức' (Method Overriding)?

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

Câu 8: Trong OOP, 'Interface' (Giao diện) chủ yếu được sử dụng để làm gì?

Câu 9: Từ khóa nào thường được dùng để chỉ định rằng một thành phần chỉ có thể được truy cập bên trong chính lớp đó?

Câu 10: Từ khóa 'static' (tĩnh) áp dụng cho một thuộc tính trong một lớp có ý nghĩa gì?

Câu 11: Hàm khởi tạo (Constructor) có đặc điểm nào sau đây?

Câu 12: Trong mối quan hệ giữa các lớp, 'Composition' (Hợp thành) khác với 'Aggregation' (Tập hợp) ở điểm cốt lõi 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: Mối quan hệ 'IS-A' (là một) trong lập trình hướng đối tượng biểu thị điều gì?

Câu 15: Mối quan hệ 'HAS-A' (có một) thường được triển khai thông qua kỹ thuật nào?

Câu 16: Đặc điểm nào của OOP giúp giảm bớt sự phức tạp bằng cách chỉ tập trung vào các thông tin cần thiết và bỏ qua các chi tiết không quan trọng?

Câu 17: Trong C++, 'Virtual function' (Hàm ảo) được sử dụng để làm gì?

Câu 18: Vấn đề 'Diamond Problem' trong lập trình hướng đối tượng xảy ra khi nào?

Câu 19: Lợi ích lớn nhất của việc sử dụng 'Tính đa hình' (Polymorphism) là gì?

Câu 20: Phạm vi truy cập 'protected' cho phép các thành phần của lớp được truy cập bởi ai?

Câu 21: Trong ngữ cảnh của OOP, 'Cohesion' (Tính gắn kết) nên được thiết kế như thế nào?

Câu 22: Trong ngữ cảnh của OOP, 'Coupling' (Tính phụ thuộc) nên được thiết kế như thế nào?

Câu 23: Từ khóa 'final' (trong Java) hoặc 'sealed' (trong C#) khi áp dụng cho một lớp có tác dụng gì?

Câu 24: Sự khác biệt chính giữa 'Shallow copy' và 'Deep copy' khi sao chép một đối tượng là gì?

Câu 25: Nguyên tắc 'Single Responsibility Principle' (Trách nhiệm đơn nhất) trong SOLID có nghĩa là gì?