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)
Chọn phần
-
Câu 1:
Xây dựng lớp Hinh_hoc là lớp cơ sở cho các lớp Hinh_vuong, Hinh_tron, Hinh_cn, Hinh_tamgiac. Nhận thấy các lớp này đểu có phương phương thức tính D_Tich(diện tích). Tuy nhiên cách tính diện tích của các phương thức D_Tich ứng với các đối tượng của các lớp dẫn xuất là khác nhau. Điều này thể hiện tính:
A. Đa hình
B. Ảo của phương thức
C. Trừu tượng
D. Đóng gói
-
Câu 2:
Các lớp có thể kế thừa từ lớp động vật là:
A. Lớp Con chó (1)
B. Lớp Con mèo (2)
C. Lớp cây cối (3)
D. Cả (1) và (2)
-
Câu 3:
Các lớp có thể kế thừa từ lớp Điện thoại:
A. Lớp điện thoại LG
B. Lớp điện thoại di động
C. Lớp điện thoại cố định
D. Tất cả phương án
-
Câu 4:
Các phương thức cơ bản của lớp xe hơi là:
A. Khởi động, Chuyển bánh, Rẽ phải, Rẽ trái, Di chuyển, Quay đầu, Lùi sau
B. Khởi động, Chuyển bánh, Rẽ phải, Rẽ trái, Di chuyển, Lùi sau
C. Khởi động, Di chuyển, Rẽ phải, Rẽ trái, Lùi sau
D. Không có phương thức nào là của lớp xe hơi
-
Câu 5:
Bắt buộc phải xây dựng hàm tạo lớp khi:
A. Khi cần khởi gán giá trị ban đầu cho thành phần thuộc tính của lớp
B. Khi cần truyền tham số cho hàm thành viên của lớp
C. Khi cần khởi gán giá trị ban đầu cho thành phần phương thức của lớp
D. Không bắt buộc phải xây dựng hàm tạo
-
Câu 6:
Cho đoạn chương trình sau:
class Phanso
{
private:
int ts,ms;
public:
Phanso(int ts1, int ms1)
{ts=ts1;ms=ms1;}
};
void main()
{
Phan so P1,P2(3,4);
}
Câu lệnh khai báo Phanso P1 bị báo lỗi vì:
A. Gọi tới hàm tạo không đối mà chương trình lại không xây dựng
B. Chương trình trên không thể lỗi được vì chương trình C++ sẽ tự phát sinh hàm tạo không đối
C. Không xác định được gọi tới hàm tạo nào
D. Tất cả đều sai
-
Câu 7:
Mối quan hệ giữa lớp Người và lớp Sinh viên là:
A. Lớp Người là lớp cơ sở cho lớp Sinh Viên
B. Lớp Người là lớp dẫn xuất của lớp Sinh Viên
C. Lớp Người là lớp bao của lớp Sinh Viên
D. Lớp Nguời là lớp đối tượng thành phần của lớp Sinh Viên
-
Câu 8:
Mối quan hệ giữa lớp Môn Học và lớp Sinh viên là:
A. Lớp Môn Học là lớp cơ sở cho lớp Sinh Viên
B. Lớp Môn Học là lớp dẫn xuất của lớp Sinh Viên
C. Lớp Môn Học là lớp bao của lớp Sinh Viên
D. Lớp Môn Học là lớp đối tượng thành phần của lớp Sinh Viên
-
Câu 9:
Khi xây dựng lớp đối tượng, các thuộc tính dữ liệu thông thường được khai báo trong phạm vi:
A. Private
B. Public
C. Private và Protected
D. Protected
-
Câu 10:
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 có:
A. Tâm là (0,0) bán kinh là 1
B. Tâm là(1,1) bán kình là 1
C. Không xác định được tâm vì theo tính chất kế thừa không kế thừa hàm tạo, ở lớp dẫn xuất phải gọi hàm tạo của lớp cơ sở
D. Tất cả các phương án đều đúng
-
Câu 11:
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 12:
Để đưa đối tượng trong thực thể vào máy tính ta cần chú trọng đến tính:
A. Kế thừa
B. • Đa hình của nó
C. Báo gói
D. Trừu tượng dữ liệu và trừu tượng chức năng
-
Câu 13:
Khi khai báo, xây dựng lớp các thuộc tính của lớp thường được khai báo trong phạm vi Private, điều này thể hiện đặc tính:
A. Bao gói
B. Trừu tượng
C. Đa hình
D. Chồng hàm
-
Câu 14:
Khi khai báo, xây dựng lớp các phương thức thường được khai báo trong phạm vi public để:
A. Tương tác với các lớp hay môi trường bên ngoài
B. Thể hiện tính bao gói dữ liệu
C. Thể hiện rõ tính chất đa hình
D. Tương tác với các thuộc tính bên trong lớp
-
Câu 15:
Cho lớp Time với ngôn ngữ C++ như sau:
class time {
int hour,min, sec;
public:
void addHour(int h);
}
Khi xây dựng phương thức addHour bên ngoài lớp Time ta phải viết là:
A. void addHour(int h){ //Nội dung}
B. void addHour(int h);{//Nội dung}
C. void time:addHour(int h){//Nội dung}
D. void time::addHour(int h){//Nội dung}
-
Câu 16:
Cho lớp Điểm như sau: Trong lớp Điểm trên thì KC2D có tên gọi là:
A. Hàm bạn của lớp Điểm
B. Phương thức của lớp
C. Hàm thông thường
D. Toán tử bạn của lớp Điểm
-
Câu 17:
Cho lớp Điểm như trên, trong lớp Điểm trên thì hàm KC2D có tên gọi là:
A. Hàm bạn của lớp Điểm
B. Phương thức của lớp
C. Hàm thông thường
D. Toán tử bạn của lớp Điểm
-
Câu 18:
Cho lớp Điểm như sau: Trong lớp Điểm trên thì để gọi tới hàm KC2D ta sử dụng câu lệnh:
A. D1.KC2D(D2);
B. D2.KC2D(D1);
C. KC2D(D1,D2);
D. D1::KC2D(D2);
-
Câu 19:
Cho khai báo sau:
A. Lớp A là bạn của lớp B
B. Lớp C là bạn của lớp A
C. Các phương thức của lớp B có quyền truy cập đến tất cả các thành viên riêng của lớp A
D. Các phương thức của lớp A có quyền truy cập đến tất cả các thành viên riêng của lớp B
-
Câu 20:
Khi khai báo, xây dựng lớp các thành phần được đặt trong phạm vi protected nhằm mục đích:
A. Cho phép kế thừa nhưng không cho phép tương tác trực tiếp từ bên ngoài lớp
B. Cho phép kế thừa và cho phép tương tác trực tiếp từ bên ngoài lớp
C. Chỉ cho phép kế thừa ngay bên trong lớp đó cũng không truy cập được