JavaScript is required
Danh sách đề

200+ câu hỏi trắc nghiệm Lập trình hướng đối tượng có lời giải chi tiết

50 câu hỏi 60 phút

Thẻ ghi nhớ
Luyện tập
Thi thử
Nhấn để lật thẻ
1 / 50
Hãy xem xét đoạn mã sau:
class A
{
protected;
int a,b;
public:
float F1,F2;
};
class B:public A
{
}
Hỏi: B sử dụng được các biến thành viên nào của A
A.

a, b, F1, F2

B.

F1, F2

C.

a, b

D.
Không sử dụng được biến thành viên nào
Đáp án
Trong C++, khi một lớp (class) kế thừa từ một lớp khác, nó sẽ được thừa hưởng các thành viên (biến và phương thức) của lớp cha. Tuy nhiên, quyền truy cập của các thành viên này phụ thuộc vào từ khóa chỉ định phạm vi (access specifier) của chúng trong lớp cha và kiểu kế thừa được sử dụng. Trong trường hợp này, lớp `B` kế thừa từ lớp `A` theo kiểu `public`. * **public:** Các thành viên `public` của lớp `A` (F1 và F2) sẽ vẫn là `public` trong lớp `B`. Do đó, chúng có thể được truy cập từ bất kỳ đâu. * **protected:** Các thành viên `protected` của lớp `A` (a và b) sẽ trở thành `protected` trong lớp `B`. Điều này có nghĩa là chúng có thể được truy cập từ bên trong lớp `B`, từ các lớp kế thừa từ `B`, và từ các lớp bạn (friend classes) của `B`. Tuy nhiên, chúng không thể được truy cập trực tiếp từ bên ngoài lớp `B`. Vì vậy, lớp `B` có thể sử dụng các biến thành viên `F1` và `F2` (do chúng là `public` trong lớp `A`) và `a` và `b` (do chúng là `protected` trong lớp `A` và `B` kế thừa `A`).

Danh sách câu hỏi:

Lời giải:
Đáp án đúng: A
Trong C++, khi một lớp (class) kế thừa từ một lớp khác, nó sẽ được thừa hưởng các thành viên (biến và phương thức) của lớp cha. Tuy nhiên, quyền truy cập của các thành viên này phụ thuộc vào từ khóa chỉ định phạm vi (access specifier) của chúng trong lớp cha và kiểu kế thừa được sử dụng. Trong trường hợp này, lớp `B` kế thừa từ lớp `A` theo kiểu `public`. * **public:** Các thành viên `public` của lớp `A` (F1 và F2) sẽ vẫn là `public` trong lớp `B`. Do đó, chúng có thể được truy cập từ bất kỳ đâu. * **protected:** Các thành viên `protected` của lớp `A` (a và b) sẽ trở thành `protected` trong lớp `B`. Điều này có nghĩa là chúng có thể được truy cập từ bên trong lớp `B`, từ các lớp kế thừa từ `B`, và từ các lớp bạn (friend classes) của `B`. Tuy nhiên, chúng không thể được truy cập trực tiếp từ bên ngoài lớp `B`. Vì vậy, lớp `B` có thể sử dụng các biến thành viên `F1` và `F2` (do chúng là `public` trong lớp `A`) và `a` và `b` (do chúng là `protected` trong lớp `A` và `B` kế thừa `A`).

Câu 2:

Có 3 lớp khai báo như sau:
class Lopl
{
private:
int a,b;
public:
float x,y;
friend class Lop2;
};
class Lop2
{
Lopl objA;
};
class Lop3
{
Lopl objB;
,};
Các Đối tượng objA và objB truy cập được các biến nào của lớp Lop1:
Lời giải:
Đáp án đúng: A
Lớp `Lop2` được khai báo là `friend class` của lớp `Lop1`. Điều này có nghĩa là lớp `Lop2` có quyền truy cập vào tất cả các thành viên của lớp `Lop1`, kể cả các thành viên `private` và `protected`. Do đó, đối tượng `objA` (thuộc lớp `Lop2`) có thể truy cập vào tất cả các biến `a`, `b`, `x`, và `y` của đối tượng thuộc lớp `Lop1`. Mặt khác, lớp `Lop3` không phải là `friend class` của lớp `Lop1`. Vì vậy, đối tượng `objB` (thuộc lớp `Lop3`) chỉ có thể truy cập vào các thành viên `public` của lớp `Lop1`, tức là các biến `x` và `y`. Vậy, đáp án đúng là: objA truy cập được tất cả các biến, objB truy cập được các biến x, y.
Lời giải:
Đáp án đúng: A
Lớp `Lop2` kế thừa từ lớp `Lop1` thông qua `public inheritance`. Điều này có nghĩa là tất cả các thành viên `public` của `Lop1` cũng sẽ trở thành các thành viên `public` của `Lop2`. Do đó, đối tượng `objLop2` của `Lop2` có thể trực tiếp truy cập các thành viên `public` của `Lop1`, bao gồm cả hàm `nhap()`. Ngoài ra, `Lop2` còn chứa một đối tượng `p` thuộc lớp `Lop1`. Để truy cập hàm `nhap()` thông qua đối tượng `p`, chúng ta sử dụng cú pháp `objLop2.p.nhap()`. Vì vậy, đáp án B là chính xác nhất vì nó trực tiếp gọi hàm `nhap()` từ đối tượng `objLop2` đã kế thừa từ lớp `Lop1`.

Câu 4:

Từ khoá protected trong một lớp có ý nghĩa:
Lời giải:
Đáp án đúng: A
Trong lập trình hướng đối tượng, từ khóa `protected` được sử dụng để khai báo các thành viên (biến hoặc phương thức) của một lớp có thể truy cập từ bên trong lớp đó, từ các lớp con (lớp kế thừa) và từ các lớp trong cùng một package. Điều này khác với `private` (chỉ truy cập được từ bên trong lớp) và `public` (truy cập được từ mọi nơi). * **Phương án A:** Không chính xác vì protected cho phép truy cập chứ không chỉ thừa kế. * **Phương án B:** Đây là ý nghĩa chính xác của protected, các thành viên được bảo vệ. * **Phương án C:** Sai. Các thành viên private mới được dùng riêng. * **Phương án D:** Sai. Các thành viên public mới được dùng chung, protected thì bị giới hạn hơn. Vậy đáp án đúng là B.

Câu 5:

Sau khi khai báo và xây dựng thành công lớp đối tượng Sinh viên. Khi đó lớp đối tượng Sinh viên còn được gọi là:
Lời giải:
Đáp án đúng: B
Sau khi khai báo và xây dựng thành công lớp đối tượng Sinh viên, lớp này được xem như một khuôn mẫu để tạo ra các đối tượng Sinh viên cụ thể. Trong lập trình hướng đối tượng, một lớp (class) định nghĩa một kiểu dữ liệu trừu tượng (Abstract Data Type - ADT). ADT bao gồm các thuộc tính (dữ liệu) và các phương thức (hành vi) mà các đối tượng của lớp đó sẽ có. Vì vậy, đáp án B là chính xác nhất.

Câu 6:

Khi khai báo và xây dựng thành công lớp đối tượng, để truy cập vào thành phần của lớp ta phải:
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP

Câu 7:

Khi khai báo và xây dựng một lớp ta cần phải xác định rõ thành phần:
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP

Câu 8:

Cho đoạn chương trình sau:
Cho đoạn chương trình sau: A. Chưa khai báo x B. Không thể truy cập vào thành phần private của lớp C. Không xác (ảnh 1)
 
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP

Câu 9:

Thành phần protected của lớp là thành phần:
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP

Câu 10:

Hàm thành viên (phương thức) của lớp:
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP

Câu 11:

Hàm thành viên của lớp khác hàm thông thường là:
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP

Câu 12:

Khái niệm của Phương thức là
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP

Câu 13:

Cho lớp Điểm trong hệ tọa độ xOy. Các phương thức có thể có của lớp điểm là:
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP

Câu 15:

Phân tích mối quan hệ giữa lớp Điểm và lớp Hình tròn ta có thể xác định:
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP

Câu 16:

Cho đoạn chương trình sau:
class Diem {
float x,y;
public:

};
class Doanthang{
Diem A,B;
public:

};
Lớp Doanthang được gọi là:
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP

Câu 17:

Lớp bao là lớp:
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP

Câu 18:

Ta khai báo lớp cơ sở ảo khi nào:
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP

Câu 19:

Lời gọi phương thức ảo là
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP

Câu 20:

Hàm hủy có mấy loại:
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP

Câu 21:

Trong một lớp có thể:
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP

Câu 22:

Tính chất của kế thừa dạng Private là:
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP

Câu 23:

Tính chất kế thừa dạng Public là:
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP

Câu 24:

Trong kế thừa có thể kế thừa tối đa:
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP

Câu 25:

Khi xây dựng nạp chồng các hàm thì điều kiện khác nhau giữa các hàm là: kiểu dữ liệu trả về của hàm hoặc kiểu dữ liệu tham số truyền vào của hàm hoặc số lượng tham số truyền vào của hàm là khác nhau. Điều kiện này chỉ áp dụng khi:
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP

Câu 26:

Cho đoạn chương trình sau:
class A {
private:
int x,y;
public:
void Xuat(); virtual;
};
Hãy nhận định phát biểu đúng:
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP

Câu 28:

Cho lớp tam giác tạo bởi ba điểm A, B, C. Quan hệ giữa lớp tam giác và lớp điểm là:
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP

Câu 31:

Xây dựng lớp điểm trong hệ toạ độ Oxyz các thuộc tính của lớp là:
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP

Câu 32:

Hãy cho biết thành phần thuộc tính của lớp đa thức xây dựng bằng mảng:
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP

Câu 33:

Tính chất kế thừa chỉ ra rằng khi lớp A kế thừa lớp B thì:
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP

Câu 34:

Hãy cho biết trong các ví dụ sau ví dụ nào thể hiện sự kế thừa:
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP

Câu 35:

Cho lớp B, C kế thừa lớp A; Lớp D kế thừa lớp B và C. Khi đó đối tượng của lớp D không thể kế thừa được thành phần của A. Cần phải:
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP

Câu 36:

Khi khai báo lớp A là bạn của lớp B thì:
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP

Câu 38:

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ì:
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP

Câu 39:

Mối quan hệ giữa lớp Môn Học và lớp Sinh viên là:
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP

Câu 41:

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à:
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP

Câu 42:

Cho đoạn chương trình trên, câu nhận định đúng cho đoạn chương trình trên là:
Cho đoạn chương trình trên, câu nhận định đúng cho đoạn chương trình trên là: (ảnh 1)
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP

Câu 43:

Cho lớp Lophoc như hình trên, ý nghĩa của phương thức “ public string Malop” là:
Cho lớp Lophoc như hình trên, ý nghĩa của phương thức “ public string Malop” là: (ảnh 1)
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP

Câu 44:

Khi khai báo các thành phần thuộc tính của lớp trong C#, đầu mỗi câu lệnh khai báo ta thường khai báo:
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP

Câu 45:

Cần In danh sách thí sinh dự thi theo phòng gồm các thông tin: SBD, Họ và tên, Ngày sinh, Giới tính, Phòng thi, Giờ thi. Người ta xây dựng hai lớp đối tượng là lớp đối tượng Thí sinh, lớp đối tượng Danh sách thí sinh theo phòng. Thuộc tính của lớp Danh sách thí sinh có thể là:
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP

Câu 46:

Một bạn sinh viên xây dựng lớp Ciclre(hình tròn) kế thừa lớp point (điểm) như trên. Để xác định đường tròn bạn cần một điểm (tâm) và bán kính, tuy nhiên khi khai báo hình tròn bạn sinh viên này chỉ khai báo mỗi bán kinh r vì:
Một bạn sinh viên xây dựng lớp Ciclre(hình tròn) kế thừa lớp point (điểm) như trên. Để xác định đường tròn bạn cần một điểm (tâm) và bán kính, tuy nhiên khi khai báo hình tròn bạn sinh viên này chỉ khai báo mỗi bán kinh r vì: (ảnh 1)
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP

Câu 48:

Chọn phương án tương ứng với phát biểu sai:
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP

Câu 49:

Câu lệnh khai báo như sau:
template (class T, class U) T min (T a, U b)
{

}
có nghĩa là
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP

Câu 50:

Cho khai báo như hình trên, khai báo là:
Cho khai báo như hình trên, khai báo là: (ảnh 1)
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP