Đáp án đúng: B
Khi khai báo và xây dựng một lớp (class) trong lập trình hướng đối tượng, ta cần xác định rõ hai thành phần chính: thuộc tính (attributes) và phương thức (methods).
- **Thuộc tính (dữ liệu):** Đại diện cho các đặc điểm, tính chất của đối tượng thuộc lớp đó. Ví dụ, một lớp `Xe hơi` có thể có các thuộc tính như `màu`, `hãng sản xuất`, `số chỗ ngồi`.
- **Phương thức (hành vi):** Đại diện cho các hành động, thao tác mà đối tượng thuộc lớp đó có thể thực hiện. Ví dụ, lớp `Xe hơi` có thể có các phương thức như `khởi động`, `tăng tốc`, `dừng lại`.
Các phương án khác không chính xác vì:
- **A. Vô số thành phần:** Mặc dù một lớp có thể có nhiều thành phần, nhưng các thành phần này đều thuộc về hai nhóm chính là thuộc tính và phương thức.
- **C. Dữ liệu và đối tượng của lớp:** Đối tượng là một thể hiện (instance) của lớp, không phải là thành phần cấu tạo nên lớp.
- **D. Khái niệm và đối tượng của lớp:** Khái niệm lớp là một định nghĩa trừu tượng, không phải là thành phần cấu tạo nên lớp.