JavaScript is required
Danh sách đề

400+ câu hỏi trắc nghiệm Lập trình hướng đối tượng kèm đáp án và lời giải minh họa - Đề 1

50 câu hỏi 60 phút

Thẻ ghi nhớ
Luyện tập
Thi thử
Nhấn để lật thẻ
1 / 50

Lập trình hướng đối tượng là gì?

A.

Lập trình hướng đối tượng là phương pháp đặt trọng tâm vào các đối tượng, nó không cho phép dữ liệu chuyển động một cách tự do trong hệ thống; dữ liệu được gắn với các hàm thành phần

B.

Lập trình hướng đối tượng là phương pháp lập trình cơ bản gần với mã máy

C.

Lập trình hướng đối tượng là phương pháp mới của lập trình máy tính, chia chương trình thành các hàm; quan tâm đến chức năng của hệ thống

D.

Lập trình hướng đối tượng là phương pháp đặt trọng tâm vào các chức năng, cấu trúc chương trình được xây dựng theo cách tiếp cận hướng chức năng

Đáp án
Lập trình hướng đối tượng (Object-Oriented Programming - OOP) là một phương pháp lập trình mà trọng tâm là các đối tượng. Các đối tượng này kết hợp dữ liệu (thuộc tính) và các hành động (phương thức) có thể thực hiện trên dữ liệu đó. Điểm quan trọng của OOP là dữ liệu không thể di chuyển tự do trong hệ thống, mà được "đóng gói" cùng với các phương thức của đối tượng, giúp bảo vệ dữ liệu và tăng tính modularity của chương trình. Phương án 1 mô tả chính xác khái niệm này: "Lập trình hướng đối tượng là phương pháp đặt trọng tâm vào các đối tượng, nó không cho phép dữ liệu chuyển động một cách tự do trong hệ thống; dữ liệu được gắn với các hàm thành phần". Các phương án khác không đúng vì: - Phương án 2: Lập trình hướng đối tượng không gần với mã máy. - Phương án 3: OOP không chỉ là chia chương trình thành các hàm, mà còn quan trọng việc tổ chức dữ liệu và các hàm liên quan vào các đối tượng. - Phương án 4: OOP đặt trọng tâm vào đối tượng, không phải chức năng.

Danh sách câu hỏi:

Câu 1:

Lập trình hướng đối tượng là gì?

Lời giải:
Đáp án đúng: A
Lập trình hướng đối tượng (Object-Oriented Programming - OOP) là một phương pháp lập trình mà trọng tâm là các đối tượng. Các đối tượng này kết hợp dữ liệu (thuộc tính) và các hành động (phương thức) có thể thực hiện trên dữ liệu đó. Điểm quan trọng của OOP là dữ liệu không thể di chuyển tự do trong hệ thống, mà được "đóng gói" cùng với các phương thức của đối tượng, giúp bảo vệ dữ liệu và tăng tính modularity của chương trình. Phương án 1 mô tả chính xác khái niệm này: "Lập trình hướng đối tượng là phương pháp đặt trọng tâm vào các đối tượng, nó không cho phép dữ liệu chuyển động một cách tự do trong hệ thống; dữ liệu được gắn với các hàm thành phần". Các phương án khác không đúng vì: - Phương án 2: Lập trình hướng đối tượng không gần với mã máy. - Phương án 3: OOP không chỉ là chia chương trình thành các hàm, mà còn quan trọng việc tổ chức dữ liệu và các hàm liên quan vào các đối tượng. - Phương án 4: OOP đặt trọng tâm vào đối tượng, không phải chức năng.

Câu 2:

Tính kế thừa trong lập trình hướng đối tượng:

Lời giải:
Đáp án đúng: A
Tính kế thừa là một khái niệm quan trọng trong lập trình hướng đối tượng (OOP). Nó cho phép chúng ta tạo ra các lớp mới (lớp dẫn xuất hoặc lớp con) dựa trên các lớp đã tồn tại (lớp cơ sở hoặc lớp cha). Lớp dẫn xuất kế thừa các thuộc tính và phương thức của lớp cơ sở, đồng thời có thể thêm các thuộc tính và phương thức mới hoặc sửa đổi các phương thức đã kế thừa. Phương án 1 mô tả chính xác khái niệm kế thừa. Phương án 2 và 3 đề cập đến khả năng tái sử dụng mã, tuy nhiên chúng không phải là định nghĩa đầy đủ và chính xác nhất về tính kế thừa. Do đó, phương án 4 (Tất cả đều đúng) không chính xác vì phương án 2 và 3 chỉ là một phần nhỏ của kế thừa hoặc liên quan đến tái sử dụng mã nói chung, chứ không phải là định nghĩa chính xác của kế thừa. Vì vậy, đáp án đúng nhất là phương án 1.
Lời giải:
Đáp án đúng: D
Trong lập trình hướng đối tượng, từ khóa `class` được sử dụng để khai báo một lớp (class). Lớp là một khuôn mẫu để tạo ra các đối tượng (object). Các phương án khác không phải là từ khóa để khai báo lớp: - `Object`: Đối tượng là một thể hiện của lớp, không phải từ khóa để khai báo lớp. - `Record`: Record thường được sử dụng trong các ngôn ngữ lập trình để định nghĩa một kiểu dữ liệu phức tạp, bao gồm nhiều trường (field) với các kiểu dữ liệu khác nhau. Nó không dùng để khai báo lớp. - `File`: File là một đối tượng đại diện cho một tập tin trên hệ thống, không liên quan đến việc khai báo lớp.

Câu 4:

Hàm thành viên (phương thức) của lớp:

Lời giải:
Đáp án đúng: D

Hàm thành viên, hay còn gọi là phương thức, là các hàm được khai báo bên trong một lớp và được sử dụng để thao tác với dữ liệu của đối tượng thuộc lớp đó. Các phương thức này thể hiện hành vi của đối tượng. Chúng có thể được định nghĩa (xây dựng) bên trong hoặc bên ngoài lớp. Do đó, đáp án chính xác nhất là phương án 4: "Tất cả các hàm(hàm trả về giá trị và không trả về giá trị) được khai báo bên trong lớp, xây dựng bên trong hay bên ngoài lớp thể hiện các hành vi của đối tượng". Các phương án khác không hoàn toàn chính xác vì:

  • Phương án 1 chỉ đề cập đến các hàm được sử dụng trong lớp, nhưng không nhấn mạnh việc chúng phải được khai báo bên trong lớp.
  • Phương án 2 không liên quan, vì nó đề cập đến tất cả các hàm trong chương trình chứ không phải chỉ các hàm thành viên của lớp.
  • Phương án 3 chỉ đề cập đến các hàm được khai báo và xây dựng bên trong lớp, nhưng bỏ qua trường hợp các hàm được khai báo bên trong lớp nhưng được xây dựng bên ngoài.

Câu 5:

Hàm thành viên của lớp khác hàm thông thường là:

Lời giải:
Đáp án đúng: A
Hàm thành viên (member function) là một hàm được định nghĩa bên trong một lớp (class). Nó khác với hàm thông thường ở những điểm sau: 1. **Phải được khai báo bên trong lớp:** Hàm thành viên được khai báo trong phần định nghĩa của lớp. Điều này cho phép nó truy cập trực tiếp vào các thành viên dữ liệu (data members) của lớp (nếu được phép truy cập). 2. **Được gọi thông qua đối tượng hoặc lớp:** Để gọi một hàm thành viên, bạn cần sử dụng một đối tượng (instance) của lớp đó (ví dụ: `object.functionName()`) hoặc sử dụng tên lớp nếu là hàm thành viên tĩnh (static member function) (ví dụ: `ClassName::functionName()`). 3. **Truy cập `this` pointer:** Bên trong một hàm thành viên không tĩnh, có một con trỏ `this` ẩn trỏ đến đối tượng mà hàm đang được gọi. Con trỏ `this` cho phép hàm thành viên truy cập các thành viên dữ liệu của đối tượng cụ thể đó. Các phương án khác không chính xác vì: * Phương án 2: Hàm thành viên và hàm thông thường có sự khác biệt lớn. * Phương án 3: Hàm thành viên có thể được xây dựng (định nghĩa) bên ngoài lớp nếu nó được khai báo bên trong lớp. (Inline functions, friend functions) * Phương án 4: `friend` là một khái niệm khác, cho phép một hàm hoặc lớp bên ngoài truy cập các thành viên `private` và `protected` của một lớp.

Câu 6:

Cho lớp người hãy xác định đâu là các thuộc tính của lớp ngườ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:

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à:

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:

Hàm tạo có đặc điểm gì?

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:

Lời gọi hàm tạo được hiểu như thế 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 10:

Tính chất kế thừa dạng Protected 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 11:

Cho đoạn chương trình sau:

class A{

public:
void Xuat();
};
class B:public A {
….
public:
void Xuat();
};
void main() {
B O;
Nếu gọi O.Xuat(); thì sẽ.

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:

Khai báo phương thức ả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
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 14:

Cho đoạn chương trình sau:

class Trai_cay
{
private:
char mauvo[5];
char mauhat[3];
char hinhdang[30];
public:
void Hienthi();
};
Cần xây dựng lớp Trai_dua_hau. Quan hệ giữa lớp Trai_cay và lớp Trai_dua_hau 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 15:

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

Câu 16:

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 17:

Đoạn khai báo thuộc tính của lớp đa thức (với hệ số là một mảng số 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
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 21:

Đoạn chương trình trên làm nhiệm 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 22:

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 23:

Cho lớp Lophoc được khai báo như trên, nếu thay câu lệnh private string maLop thành public string maLop 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
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:

Người ta cần quản lý cần quản lý các thông tin về công dân để xác định xem hai công dân bất kỳ có thể kết hôn được với nhau hay không. Biết rằng điều kiện kết hôn là: là công dân từ 18 tuổi trở nên, có tình trạng kết hôn là độc thân, hai công dân kết hôn không cùng giới tính, đồng thời phải lưu lại các thông tin của người kết hôn. Các lớp cần thuộc tính cần xây dựng cho hai lớp đối tượng của bài toán trê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

Câu 26:

Cho biết khẳng định đúng nhất trong các khẳng định sau:

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 27:

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
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 30:

Để khai báo mảng số thực động thì dùng đoạn mã nào sau đây:
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
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ừ khoá protected trong một lớp có ý nghĩ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
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 36:

Phương pháp lập trình tuần 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 37:

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à:
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 39:

Cho đoạn chương trình sau:
class A{
private:
int x,y;
void Nhap();
};
Cho lớp B kế thừa public lớp A, để lớp B có thể truy cập đến phương thức Nhap 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
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:

Thành viên 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 42:

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 45:

Vào mỗi kỳ thi người ta cần lập ra danh thí sinh dự thi dựa theo danhsá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à:
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:

Cho lớp Dathuc, để thực hiện khai báo sau mà không lỗi:
void main()
{
Dathuc
D1,D2(D1);
}
Ta cần xây dự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 47:

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 thí sinh 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 48:

Cho đoạn chương trình khai báo như trên, việc sử dụng từ khóa static đứng trước khai báo tongsohd, tongtienban có ý nghĩa:
Cho đoạn chương trình khai báo như trên, việc sử dụng từ khóa static đứng trước khai báo tongsohd, tongtienban có ý nghĩa: (ả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 49:

Cho khai báo thành phần của các lớp như trên, Có lỗi trong phương thức nhap() của lớp HCN. Lỗi đó ở dòng:
Cho khai báo thành phần của các lớp như trên, Có lỗi trong phương thức nhap() của lớp HCN. Lỗi đó ở dòng: (ả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 50:

Cho khai báo như trên, câu nhận định đúng là:
Cho khai báo như trên, câu nhận định đúng 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