225 câu trắc nghiệm Lập trình hướng đối tượng
tracnghiem.net chia sẻ hơn 220+ câu trắc nghiệm môn Lập trình hướng đối tượng có đáp án dành cho các bạn sinh viên chuyên ngành có thêm tư liệu học tập, ôn tập chuẩn bị cho kì thi kết thúc học phần sắp diễn ra. Để việc ôn tập trở nên hiệu quả hơn, các bạn có thể ôn theo từng phần trong bộ câu hỏi này bằng cách trả lời lần lượt các câu hỏi cũng như so sánh đáp và lời giải chi tiết được đưa ra. Sau đó các bạn hãy chọn tạo ra đề ngẫu nhiên để kiểm tra lại kiến thức mình đã ôn tập được nhé!
Chọn hình thức trắc nghiệm (20 câu/20 phút)
-
Câu 1:
class A là bạn của class B, class B là bạn của class C thì:
A. class C có thể truy xuất đến các thành viên private của class A
B. class B có thể truy xuất đến các thành viên private của class C
C. class B có thể truy xuất các thành viên của class A
D. class A có thể truy xuất các thành viên private của class C
-
Câu 2:
Trong khai báo sau:
class Diem { (1)
private:
int x,y;(2)
public:(3)
…..
};(4)
class Hinhtron: public Diem (5)
{
private: r:real;(6)
};
Câu lệnh khai báo tại dòng số 5 cho biết:
A. Khai báo lớp Hinhtron kế thừa public lớp Diem
B. Khai báo lớp Diem kế thừa lớp Hinhtron
C. Khai báo lớp Hinhtron là bạn lớp Diem
D. Khai báo lớp Hinhtron là lớp bao của lớp Diem
-
Câu 3:
Từ khoá protected trong một lớp có ý nghĩa:
A. Khai báo các thành viên của lớp chỉ được thừa kế
B. Khai báo các thành viên được bảo vệ
C. Khai báo các thành viên của lớp được dùng riêng
D. Khai báo các thành viên của lớp sẽ được dùng chung và thừa kế
-
Câu 4:
Xem xét bài toán nhập vào danh sách sinh viên gồm n sinh viên với những thông tin: Họ và tên, Ngày sinh (dd/mm/yyyy), Giới tính, Địa chỉ, Lớp và hiển thị thông tin theo ngày sinh tăng dần. Nếu bài toán yêu cầu xây dựng trong C++, các lớp đối tượng cần xây dựng cho bài toán gồm Lớp Sinh viên và lớp danh sách sinh viên. Các thuộc tính của lớp danh sách sinh viên là:
A. Ngày tháng, Số sinh viên (n), mảng đối tượng Sinh viên
B. Họ và tên, Ngày sinh, Giơi tính, Địa chỉ, Lớp
C. Ngày tháng, Số sinh viên (n), Họ và tên, Ngày sinh, Giơi tính, Địa chỉ, Lớp
D. Số sinh viên (n), mảng đối tượng Sinh viên
-
Câu 5:
Trong kế thừa nhiều mức có cho phép:
A. Cho phép trùng tên cả phương thức lẫn thuộc tính
B. Không cho phép trùng tên phương thức và thuộc tính
C. Cho phép trùng tên phương thức còn không cho phép trùng tên thuộc tính
D. Cho phép trùng tên thuộc tính còn không cho phép trùng tên phương thức
-
Câu 6:
Cho lớp Lophoc được khai báo như trên, ý nghĩa của việc xây dựng phương thức public Datatable getClasses() là:
A. Thực hiện truy vấn CSDL, trả về bảng Lop
B. Thực hiện thiết lập giá trị cho các thuộc tính của lớp
C. Không có phương án đúng
-
Câu 7:
Vào mỗi kỳ thi người ta cần lập ra danh thí sinh dự thi dựa theo danh sách sinh viên đủ điều kiện dự thi của mỗi môn học, để thuận tiện xử lý người ta xây dựng lớp Thí sinh dựa trên lớp sinh viên với điều kiện là đủ điều kiện dự thi các môn học. Mối quan hệ giữa lớp Sinh viên và lớp thí sinh là:
A. Lớp Sinh viên là trường hợp đặc biệt hóa của lớp Thí sinh
B. Lớp Thí sinh là trường hợp tổng quá của lớp Sinh viên
C. Lớp Thí sinh là trường hợp đặc biệt hóa của lớp Sinh viên
D. Không có phương án đúng
-
Câu 8:
Cho đoạn chương trình như hình trên, lớp Convat được gọi là:
A. Lớp cơ sở
B. Lớp cơ sở trừu tượng
C. Lớp cơ sở ảo
D. Lớp dẫn xuất
-
Câu 9:
Cho lớp người hãy xác định đâu là các thuộc tính của lớp người:
A. Ăn, Uống, Chân, Tay
B. Hát, học, vui, cười
C. Tất cả đều sai
D. Chân, Tay, Mắt, Mũi, Tên, Ngày sinh
-
Câu 10:
Giả sử một lớp với các hàm dựng được khai báo như sau:
class Lop
private :
int a,b;
public:lop ( ) // Ham dung 1
{
a = b = 5;
}
lop (int m, int n) // Ham dung 2
{
a = m; b = n;
}
};
Khi tạo một đối tượng con trỏ bằng lệnh sau:
Lop ^objLop;
objLop = new Lop(3,4);
Thì hàm dựng nào sẽ được gọi
A. Hàm dựng 2
B. Hàm dựng 1
C. Cả 2 hàm dựng đều được gọi
D. Không hàm dựng nào được gọi
-
Câu 11:
Các dạng kế thừa là:
A. Private, Public, Protected
B. Private, Public
C. Private, Protected
D. Protected, Public
-
Câu 12:
Một người cần xây dựng lớp Thời gian (Timer) trong máy tính cần hiển thị thông tin như sau: giờ:phút:giây. Vậy các thuộc tính cần xây dựng cho lớp Timer là:
A. Giờ
B. Phút
C. Giây
D. Giờ, Phút, Giây
-
Câu 13:
Trong lập trình hướng đối tượng khả năng các hàm có thể trùng tên nhau gọi là:
A. Không được phép xây dựng các hàm trùng tên nhau trong cùng một chương trình
B. Sự chồng hàm
C. Sự chồng hàm nhưng chỉ những hàm thành viên của lớp mới được phép trùng nhau
D. Sự chồng hàm nhưng chỉ các hàm thông thường mới được phép trùng nhau
-
Câu 14:
class Diem
{
float x,y;
public:
Diem(){x=0;y=0}; //ham tao khong doi
Diem(float x,float y);//ham tao co doi
};
class HT:public Diem
{
private:
float r;
public:
HT(){r=1;};
HT(float x1,float y1, float r1){r=r1;};
};
Đoạn chương trình trên khi khai báo 1 hình tròn (HT H1;) thì hình tròn H1 này chưa xác định được tâm vì theo tính chất kế thừa không kế thừa hàm tạo ta phải tự triệu gọi hàm tạo của lớp cơ sở ở lớp dẫn xuất. Để xác định tâm cho hình tròn H1 là 0,0 ta cần sửa là:
A. HT():Diem(){r=1;};
B. HT(){x=0,y=0;r=1;};
C. HT(){Diem();r=1;};
D. Tất cả các phương án đều đúng
-
Câu 15:
Vào mỗi kỳ thi người ta cần lập ra danh thí sinh dự thi dựa theo danh sách sinh viên đủ điều kiện dự thi của mỗi môn học, để thuận tiện xử lý người ta xây dựng lớp Thí sinh dựa trên lớp sinh viên với điều kiện là đủ điều kiện dự thi các môn học. Người ta phân tích thấy lớp thí sinh là trường hợp đặc biệt của lớp Sinh viên vì vậy khi xây dựng người ta xây dựng:
A. Lớp Thí sinh kế thừa lớp Sinh viên
B. Lớp Sinh viên kế thừa lớp Thí sinh
C. Lớp Thí sinh là lớp bao của lớp Sinh viên
D. Lớp Sinh viên là lớp bao của lớp Thí sinh
-
Câu 16:
Các trường hợp trùng tên trong kế thừa là:
A. Trùng tên giữa phương thức lớp cha và phương thức lớp con; Trùng tên giữa phương thức giữa các lớp cha; Trùng tên giữa các lớp con
B. Trùng tên giữa phương thức lớp cha và phương thức lớp con; Trùng tên giữa phương thức giữa các lớp cha; Kế thừa lớp cha quá nhiều lần
C. Trùng tên giữa phương thức lớp cha và phương thức lớp con; Trùng tên giữa phương thức giữa các lớp cha
D. Trùng tên giữa phương thức lớp cha và phương thức lớp con;; Trùng tên giữa các lớp con
-
Câu 17:
Cho lớp A, B, C trong đó lớp C kế thừa lớp A,B. Trong lớp A, B đều có phương thức Xuat, lớp C không có phương thức Xuất, khi khai báo đối tượng obj thuộc lớp C thì nếu gọi đến phương thức Xuat (obj.Xuat()) thì khi biên dịch thấy xuất hiện lỗi, trường hợp xảy ra lỗi này là do:
A. Lớp A
B. Lớp B
C. Lỗi không thể xác định được
D. Trùng tên giữa phương thức các lớp cha
-
Câu 18:
Câu lệnh khai báo như sau:
template (class T) T min (T a, T b)
{
…
}
có nghĩa là:
A. Khai báo họ các hàm tìm giá trị nhỏ nhất giữa hai số có cùng kiểu dữ liệu
B. Khai báo họ các hàm tìm giá trị nhở nhất giữa các cố bất kỳ
C. Khai báo họ các hàm tìm giá trị nhỏ nhất của một dãy các số có chung kiểu dữ liệu
-
Câu 19:
Một bạn sinh viên xây dựng cấu trúc Stack dưới dạng khai báo lớp như trên, Bạn sinh viên đã khai báo xây dựng stack lưu trữ dưới dạng:
A. Mảng
B. Danh sách liên kết
C. Không xác định được
-
Câu 20:
Để khai báo thành viên tĩnh trong C++ và Java đều dùng từ khóa static. Sự nhận định các phương thức tĩnh trong C++ và trong Java là:
A. Các phương thức trong C++ không khai báo từ khóa static vẫn mặc định là thành viên tĩnh (1)
B. Các phương thức trong Java không khai báo từ khóa static mặc định là phương thức ảo (2)
C. Sự nhận định thành viên tĩnh trong Java và C++ là như nhau
D. Cả (1) và (2)