Phát triển Phần mềm và Dữ liệu Quiz
200+ câu hỏi trắc nghiệm Lập trình hướng đối tượng (Có đáp án)
📜 Đọc lưu ý & miễn trừ trách nhiệm trước khi làm bài (Click để đọc)
⚠️ Xin lưu ý và đọc kỹ phần miễn trừ trách nhiệm: Các câu hỏi và đáp án được cung cấp trong bộ trắc nghiệm này mang tính chất tham khảo, phục vụ cho mục đích học tập và luyện tập kiến thức. Đây KHÔNG phải là đề thi chính thức, cũng không đại diện cho tài liệu chuẩn hoặc kỳ thi chứng chỉ do bất kỳ cơ quan giáo dục hay tổ chức cấp chứng chỉ nào ban hành. Website không chịu trách nhiệm về tính chính xác của nội dung cũng như các quyết định được đưa ra dựa trên kết quả làm bài.
Bộ số 1
Câu 1
Trong OOP, khái niệm nào liên quan đến việc một đối tượng có thể có hành vi khác nhau khi thực hiện cùng một phương thức?
Câu 2
Trong OOP, một 'abstract method' (phương thức trừu tượng) là gì?
Câu 3
Đâu là một đặc điểm của 'inheritance' (kế thừa) trong OOP?
Câu 4
Trong OOP, 'encapsulation' (đóng gói) giúp bảo vệ dữ liệu bằng cách nào?
Câu 5
Khái niệm 'Đa hình' (Polymorphism) trong OOP cho phép điều gì?
Câu 6
Trong OOP, 'method overriding' (ghi đè phương thức) khác với 'method overloading' (quá tải phương thức) ở điểm nào?
Câu 7
Khái niệm 'cohesion' (sự gắn kết) trong OOP đề cập đến điều gì?
Câu 8
Khái niệm 'composition' (sở hữu/tập hợp) trong OOP khác với 'inheritance' (kế thừa) ở điểm nào?
Câu 9
Chọn phát biểu ĐÚNG về 'Đóng gói' (Encapsulation) trong OOP.
Câu 10
Đâu là một ví dụ về 'method overloading' (quá tải phương thức) trong OOP?
Câu 11
Trong OOP, 'Trừu tượng hóa' (Abstraction) tập trung vào điều gì?
Câu 12
Đâu là một ví dụ về 'covariant return types' (kiểu trả về đồng biến) trong OOP?
Câu 13
Trong các ngôn ngữ OOP hỗ trợ 'kế thừa đa' (multiple inheritance), điều gì có thể xảy ra nếu một lớp kế thừa thuộc tính 'mauSac' từ hai lớp cha khác nhau mà không có cơ chế xử lý xung đột?
Câu 14
Tại sao việc sử dụng 'private constructors' (hàm tạo riêng tư) lại hữu ích trong OOP, ví dụ như trong mẫu thiết kế Singleton?
Câu 15
Nguyên tắc 'O' trong SOLID (Open/Closed Principle) phát biểu rằng các thực thể phần mềm (lớp, module, hàm, v.v.) nên:
Câu 16
Đâu là một ví dụ về 'dependency injection' (tiêm phụ thuộc) trong thiết kế OOP?
Câu 17
Trong OOP, khái niệm 'Constructor' (Hàm tạo) được sử dụng để làm gì?
Câu 18
Trong lập trình hướng đối tượng (OOP), khái niệm nào cho phép một lớp kế thừa các thuộc tính và phương thức từ một lớp khác?
Câu 19
Khái niệm 'encapsulation' (đóng gói) trong OOP chủ yếu nhằm mục đích gì?
Câu 20
Trong OOP, 'interface segregation principle' (nguyên tắc phân tách giao diện) nói rằng:
Câu 21
Trong OOP, 'abstraction' (trừu tượng hóa) giúp giải quyết vấn đề gì trong các hệ thống phần mềm phức tạp?
Câu 22
Đâu là một ví dụ về 'class invariant' (bất biến lớp) trong thiết kế OOP?
Câu 23
Khái niệm 'static' (tĩnh) trong OOP thường được áp dụng cho điều gì?
Câu 24
Lớp 'Dog' kế thừa từ lớp 'Animal'. Nếu chúng ta có một hàm nhận đối tượng kiểu 'Animal' và gọi phương thức 'makeSound()', thì hành vi của hàm này sẽ phụ thuộc vào điều gì để thể hiện tính đa hình (polymorphism)?
Câu 25
Trong OOP, 'composition over inheritance' (sở hữu hơn kế thừa) là một nguyên tắc thiết kế quan trọng. Tại sao?
Câu 26
Trong OOP, 'SOLID' là một tập hợp các nguyên tắc thiết kế. Nguyên tắc 'S' trong SOLID là gì?
Câu 27
Khi một lớp triển khai một giao diện (interface), điều bắt buộc là gì?
Câu 28
Đâu là một ví dụ về 'getter' (phương thức lấy giá trị) trong OOP?
Câu 29
Trong OOP, 'constructor chaining' (chuỗi hàm tạo) xảy ra khi nào?
Câu 30
Tại sao 'polymorphism' (đa hình) là một khái niệm quan trọng trong OOP?
Câu 31
Khi một lớp kế thừa từ một lớp trừu tượng (abstract class), điều bắt buộc là gì?
Câu 32
Chọn phát biểu SAI về 'Abstraction' (Trừu tượng hóa) trong OOP.
Câu 33
Trong OOP, 'Polymorphism' (đa hình) thường được thực hiện thông qua cơ chế nào?
Câu 34
Trong OOP, 'abstract class' (lớp trừu tượng) và 'interface' (giao diện) có điểm gì chung quan trọng nhất?
Câu 35
Đâu là một ví dụ về 'kế thừa đơn' (single inheritance) trong OOP?
Câu 36
Đâu là một ví dụ về 'factory pattern' (mẫu thiết kế nhà máy) trong OOP?
Câu 37
Trong OOP, 'immutable objects' (đối tượng bất biến) là gì?
Câu 38
Một lớp trừu tượng (abstract class) trong OOP có thể:
Câu 39
Đâu là một ví dụ về 'data hiding' (che giấu dữ liệu) trong OOP, một khía cạnh của đóng gói?
Câu 40
Tại sao 'coupling' (sự liên kết) giữa các lớp trong một hệ thống OOP nên được giữ ở mức thấp?
