Tính đóng gói là:
A.
Cơ chế chia chương trình thành các hàm và thủ tục thực hiện các chức năng riêng rẽ.
B.
Cơ chế cho thấy một hàm có thể có nhiều thể hiện khác nhau ở từng thời điểm.
C.
Cơ chế ràng buộc dữ liệu và thao tác trên dữ liệu đó thành một thể thống nhất, tránh được các tác động bất ngờ từ bên ngoài. Thể thống nhất này gọi là đối tượng.
D.
Cơ chế không cho phép các thành phần khác truy cập đến bên trong nó.
Trả lời:
Đáp án đúng: C
Tính đóng gói (Encapsulation) là một trong bốn tính chất trụ cột của lập trình hướng đối tượng (OOP). Nó là cơ chế kết hợp dữ liệu (thuộc tính) và các phương thức (hàm) thao tác trên dữ liệu đó thành một đơn vị duy nhất, được gọi là đối tượng. Mục đích chính của tính đóng gói là bảo vệ dữ liệu khỏi sự truy cập và thay đổi trực tiếp từ bên ngoài, từ đó đảm bảo tính toàn vẹn và nhất quán của dữ liệu.
* **Phương án A:** Mô tả về tính mô-đun hóa (Modularity), không phải tính đóng gói.
* **Phương án B:** Mô tả về tính đa hình (Polymorphism), không phải tính đóng gói.
* **Phương án C:** Đây là định nghĩa chính xác về tính đóng gói. Nó kết hợp dữ liệu và các thao tác lên dữ liệu thành một thể thống nhất (đối tượng) và ngăn chặn sự can thiệp trực tiếp từ bên ngoài.
* **Phương án D:** Mặc dù tính đóng gói có liên quan đến việc kiểm soát truy cập, nhưng nó không chỉ đơn thuần là "không cho phép các thành phần khác truy cập đến bên trong nó". Tính đóng gói cho phép kiểm soát mức độ truy cập (ví dụ: public, private, protected) để cho phép hoặc ngăn chặn truy cập đến các thành phần khác nhau của đối tượng, chứ không phải là cấm hoàn toàn.
Vì vậy, đáp án đúng nhất là C.





