Cho đoạn chương trình như hình trên, lớp Convat được gọi là:
Đáp án đúng: B
Cùng ôn thi với bộ câu hỏi trắc nghiệm môn Lập trình hướng đối tượng có đáp án mà tracnghiem.net chia sẽ dưới đây, nhằm giúp các bạn sinh viên chuyên ngành chuẩn bị cho kì thi sắp tới.
Câu hỏi liên quan
Câu hỏi đề cập đến việc xây dựng lớp số nguyên và nhập giá trị cho đối tượng thuộc lớp đó. Trong C++, nếu ta định nghĩa toán tử nhập (>>) cho lớp số nguyên của mình, ta có thể sử dụng cin >> A;
để nhập giá trị cho đối tượng A. Các phương án khác không phải là cách gọi nhập dữ liệu chuẩn trong C++ cho một lớp tự định nghĩa, trừ khi lớp đó có phương thức Nhap()
hoặc cin()
được định nghĩa để thực hiện việc này. Tuy nhiên, theo ngữ cảnh thông thường của C++, phương án cin >> A;
là phù hợp nhất nếu toán tử >>
đã được nạp chồng (overload) cho lớp số nguyên đó.
Lớp C kế thừa từ cả hai lớp A và B. Trong ngữ cảnh lập trình hướng đối tượng, lớp C được gọi là lớp dẫn xuất (hoặc lớp con) của A và B, vì nó kế thừa các thuộc tính và phương thức từ hai lớp này.
- Lớp bao (wrapper class) là một lớp mà mục đích chính của nó là bao bọc một kiểu dữ liệu khác để cung cấp thêm chức năng hoặc thay đổi hành vi của nó.
- Lớp thành phần (component class) thường được sử dụng để xây dựng các thành phần giao diện người dùng hoặc các thành phần phần mềm có thể tái sử dụng.
- Lớp cơ sở (base class) là lớp mà các lớp khác kế thừa từ đó. Trong trường hợp này, A và B là lớp cơ sở của C.
Khi đa năng hóa toán tử nhập (>>
) cho một lớp (ví dụ: SP
), chúng ta thường khai báo nó như một hàm bạn (friend
) để có thể truy cập trực tiếp vào các thành viên private hoặc protected của lớp đó. Dưới đây là phân tích chi tiết cho từng phương án:
- Phương án 1:
friend istream & operator >>(istream & istr, SP &a);
- Đây là khai báo đúng.
friend
: Cho phép hàm này truy cập các thành viên private/protected của lớpSP
.istream &
: Toán tử trả về một tham chiếu đến đối tượngistream
. Điều này cho phép thực hiện nhập liên tiếp (ví dụ:cin >> a >> b
).istream & istr
: Tham số thứ nhất là một tham chiếu đến đối tượngistream
(ví dụ:cin
). Tham chiếu này cho phép thay đổi trạng thái củaistream
(ví dụ: đọc dữ liệu từ luồng).SP &a
: Tham số thứ hai là một tham chiếu đến đối tượng lớpSP
. Tham chiếu này cho phép thay đổi trực tiếp đối tượngSP
khi đọc dữ liệu vào nó.
- Phương án 2:
friend void istream & operator >>(istream & istr, SP &a);
- Sai. Hàm trả về
void
không cho phép nhập liên tiếp.
- Sai. Hàm trả về
- Phương án 3:
friend istream & operator >>(istream istr, SP &a);
- Sai. Tham số
istream istr
được truyền theo giá trị (by value), không cho phép thay đổi trạng thái của luồng nhập gốc (ví dụ:cin
).
- Sai. Tham số
- Phương án 4:
friend istream & operator >>(istream & istr, SP a);
- Sai. Tham số
SP a
được truyền theo giá trị, nghĩa là một bản sao của đối tượngSP
được tạo ra. Bất kỳ thay đổi nào được thực hiện trêna
sẽ không ảnh hưởng đến đối tượng gốc. Do đó, chúng ta không thể nhập dữ liệu trực tiếp vào đối tượngSP
ban đầu.
- Sai. Tham số
Lập trình hướng đối tượng (OOP) có bốn đặc điểm cơ bản, tạo nên nền tảng của nó:
- Tính đóng gói (Encapsulation): Là việc gói dữ liệu (thuộc tính) và phương thức (hành vi) thao tác trên dữ liệu đó vào trong một đơn vị duy nhất, gọi là lớp. Điều này giúp bảo vệ dữ liệu khỏi sự truy cập trực tiếp từ bên ngoài và tăng tính bảo mật của chương trình.
- Tính kế thừa (Inheritance): Cho phép một lớp (lớp con) kế thừa các thuộc tính và phương thức của một lớp khác (lớp cha). Điều này giúp tái sử dụng mã, giảm sự trùng lặp và xây dựng các hệ thống phân cấp lớp.
- Tính đa hình (Polymorphism): Cho phép các đối tượng thuộc các lớp khác nhau có thể được xử lý thông qua một giao diện chung. Điều này giúp chương trình trở nên linh hoạt và dễ mở rộng.
- Tính trừu tượng (Abstraction): Tập trung vào các đặc điểm quan trọng của đối tượng, bỏ qua các chi tiết không cần thiết. Điều này giúp giảm độ phức tạp của chương trình và cho phép người dùng tập trung vào các khía cạnh quan trọng nhất.
Như vậy, đáp án B là chính xác nhất vì nó bao gồm cả bốn đặc điểm cơ bản của lập trình hướng đối tượng: tính đóng gói, tính kế thừa, tính đa hình và tính trừu tượng.
Câu hỏi yêu cầu xác định phương án nào mô tả một đối tượng.
- Phương án A: Máy tính là một đối tượng cụ thể, có hình dạng, kích thước và chức năng.
- Phương án B: Xe đạp là một đối tượng cụ thể, có hình dạng, kích thước và chức năng.
- Phương án C: Quả cam là một đối tượng cụ thể, có hình dạng, kích thước và thuộc tính (màu sắc, vị giác). Vì tất cả các phương án A, B, và C đều mô tả đối tượng, nên phương án D là đáp án chính xác.

FORM.08: Bộ 130+ Biểu Mẫu Thống Kê Trong Doanh Nghiệp

FORM.07: Bộ 125+ Biểu Mẫu Báo Cáo Trong Doanh Nghiệp

FORM.06: Bộ 320+ Biểu Mẫu Hành Chính Thông Dụng

FORM.05: Bộ 330+ Biểu Mẫu Thuế - Kê Khai Thuế Mới Nhất

FORM.04: Bộ 240+ Biểu Mẫu Chứng Từ Kế Toán Thông Dụng

CEO.22: Bộ Tài Liệu Quy Trình Kiểm Toán, Kiểm Soát Nội Bộ Doanh Nghiệp
ĐĂNG KÝ GÓI THI VIP
- Truy cập hơn 100K đề thi thử và chính thức các năm
- 2M câu hỏi theo các mức độ: Nhận biết – Thông hiểu – Vận dụng
- Học nhanh với 10K Flashcard Tiếng Anh theo bộ sách và chủ đề
- Đầy đủ: Mầm non – Phổ thông (K12) – Đại học – Người đi làm
- Tải toàn bộ tài liệu trên TaiLieu.VN
- Loại bỏ quảng cáo để tăng khả năng tập trung ôn luyện
- Tặng 15 ngày khi đăng ký gói 3 tháng, 30 ngày với gói 6 tháng và 60 ngày với gói 12 tháng.