wayground logo

Free Printable Worksheets

Font size

S
M
L
XL
Worksheets

Câu hỏi về lập trình C#

Total questions: 27

Worksheet time: 14mins

Name
Class
Date
1.

Từ khóa nào được sử dụng để tạo lớp trong C#?

a)

New

b)

Class

c)

Create

d)

Object

2.

Từ khóa nào được sử dụng để tạo một đối tượng trong C#?

a)

New

b)

Create

c)

Class

d)

Object

3.

Một constructor là gì?

a)

Một biến chứa giá trị mặc định cho đối tượng

b)

Một phương thức đặc biệt được sử dụng để khởi tạo các đối tượng

c)

Một phương thức để hủy đối tượng

d)

Một lớp kế thừa từ lớp khác

4.

Giao diện (interface) là gì?

a)

Một bản hợp đồng chứa các định nghĩa cho một nhóm các chức năng liên quan mà một lớp không trừu tượng hoặc một cấu trúc phải thực hiện

b)

Một tệp tin chứa mã nguồn C#

c)

Một lớp chứa các phương thức tĩnh

d)

Một biến toàn cục có thể truy cập từ bất kỳ đâu

5.

Lớp trừu tượng là gì?

a)

Một biến toàn cục có thể truy cập từ bất kỳ đâu

b)

Một tệp tin chứa mã nguồn C#

c)

Một lớp chứa các phương thức tĩnh

d)

Một lớp không thể được sử dụng để tạo đối tượng

6.

Phương thức get trong thuộc tính được sử dụng để làm gì?

a)

Khởi tạo đối tượng mới

b)

Gọi một phương thức khác

c)

Trả về giá trị của biến

d)

Thiết lập giá trị cho biến

7.

Điểm khác biệt chính giữa lớp (class) và đối tượng (object) là gì?

a)

Lớp là mẫu để tạo ra đối tượng

b)

Đối tượng và lớp là giống nhau

c)

Đối tượng là mẫu để tạo ra lớp

d)

Lớp là thể hiện của đối tượng

8.

Tại sao cần có bộ điều chỉnh truy cập (access modifiers) đối với các thành viên của lớp?

a)

Để kiểm soát khả năng hiển thị của các thành viên lớp

b)

Để tăng tốc độ thực thi của chương trình

c)

Để giảm kích thước mã nguồn

d)

Để hỗ trợ đa kế thừa

9.

Tại sao lập trình hướng đối tượng (OOP) dễ bảo trì hơn lập trình thủ tục?

a)

Vì OOP giúp giữ mã DRY và làm cho mã dễ bảo trì, sửa đổi và gỡ lỗi hơn

b)

Vì OOP không sử dụng biến toàn cục

c)

Vì OOP có ít dòng mã hơn

d)

Vì OOP không cần biên dịch mã nguồn

10.

Làm thế nào để khai báo và khởi tạo một đối tượng Ford của lớp Car với model “Mustang”, color “red”, và year 1969?

a)

Car Ford Car("Mustang", "red", 1969);

b)

Car Ford; Ford.model = "Mustang"; Ford.color = "red"; Ford.year = 1969;

c)

Car Ford = new ("Mustang", "red", 1969);

d)

Car Ford = new Car(); Ford.model = "Mustang"; Ford.color = "red"; Ford

11.

Làm thế nào để truy cập phương thức fullThrottle của đối tượng myCar trong lớp Car?

a)

myCar->fullThrottle();

b)

myCar.fullThrottle();

c)

Car.fullThrottle(myCar);

d)

fullThrottle(myCar);

12.

Làm thế nào để gọi phương thức honk của đối tượng myCar thuộc lớp Car kế thừa từ lớp Vehicle?

a)

Car.honk();

b)

myCar.honk();

c)

Vehicle.honk(myCar);

d)

myCar->honk();

13.

Khi sử dụng từ khóa this trong phương thức thành phần của lớp, từ khóa này trỏ đến đối tượng nào?

a)

Đối tượng cha của lớp đó

b)

Đối tượng con của lớp đó

c)

Đối tượng hiện tại của lớp đó

d)

Đối tượng mới được tạo

14.

Trong lập trình hướng đối tượng, tính chất nào có thể cho phép đối tượng có thể có các hành động khác nhau dựa trên việc gọi cùng một tên phương thức?

a)

Tính đa hình

b)

Tính trừu tượng

c)

Tính đóng gói

d)

Tính kế thừa

15.

Làm thế nào để tạo một đối tượng từ lớp Car?

a)

myObj = new Car;

b)

Car myObj = Car();

c)

Car myObj = create Car();

d)

Car myObj = new Car();

16.

Làm thế nào để tạo một đối tượng của lớp Car với tên myCar và thiết lập color thành "blue"?

a)

Car myCar = new Car(); myCar.color = "blue";

b)

Car myCar, myCar.color = "blue";

c)

Car myCar Car("blue");

d)

Car myCar = "blue";

17.

Làm thế nào để tạo một constructor trong lớp Car nhận tham số color và thiết lập giá trị cho trường color?

a)

public Car(string color) { color = color; }

b)

public Car(string color) { this.color = color; }

c)

public Car(string color) { Car.color = color, }

d)

public Car(string c) { this.c = color; }

18.

Làm thế nào để khai báo một thuộc tỉnh Name công khai với phương thức get và set trong lớp Person?

a)

internal string Name { get; set; }

b)

private string Name { get; set; }

c)

protected string Name { get; set; }

d)

public string Name {get; set; }

19.

Làm thế nào để sử dụng từ khóa sealed để ngăn lớp Vehicle không bị kế thừa?

a)

protected sealed class Vehicle {…}

b)

sealed class public Vehicle {…}

c)

sealed class Vehicle {…}

d)

private sealed class Vehicle {…}

20.

Trong C#, khi nào thì phương thức khởi tạo ngầm định được tạo ra?

a)

Khi lớp không có phương thức tỉnh

b)

Khi lớp không có thuộc tính

c)

Khi lớp không có phương thức hủy

d)

Khi trong khai báo lớp không có định nghĩa phương thức khởi tạo nào

21.

Trong C#, khóa nào được dùng để định nghĩa một thuộc tính tự động?

a)

getValue; setValue;

b)

get; set;

c)

field; property;

d)

read; write;

22.

Trong C#, tại sao lại sử dụng thuộc tính thay vì biến thành viên public?

a)

Để kiểm soát dữ liệu khi truy xuất hay gán giá trị

b)

Để giảm thời gian biên dịch

c)

Để tiết kiệm bộ nhớ

d)

Để dễ dàng mở rộng lớp

23.

Trong C#, làm thế nào để đảm bảo một thuộc tính chỉ có thể đọc mà không thể ghi?

a)

Chỉ định phương thức set là private

b)

Chỉ định phương thức get và bỏ qua phương thức set

c)

Chỉ định phương thức set và bỏ qua phương thức get

d)

Chỉ định phương thức get là public

24.

Trong C#, tại sao nên sử dụng phương thức tĩnh?

a)

Để dễ dàng mở rộng lớp

b)

Để gọi phương thức mà không cần tạo đối tượng của lớp

c)

Để tiết kiệm bộ nhớ

d)

Để giảm thời gian biên dịch

25.

Trong C#, tham số nào được dùng để truyền giá trị đầu vào cho phương thức và không bị thay đổi trong phương thức đó?

a)

Tham số tham chiếu

b)

Tham số đầu ra

c)

Tham số tham trị

d)

Tham số hằng

26.

Trong C#, phương thức nào của lớp cho phép khởi tạo giá trị của các thành phần dữ liệu của đối tượng?

a)

Method

b)

Destructor

c)

Constructor

d)

Property

27.

Phương thức nào được sử dụng để in giá trị của biến color của đối tượng myObj trong lớp Car trong C#?

a)

System.out.println(myObj.color);

b)

Console.WriteLine(myObj.color);

c)

print(myObj.color);

d)

echo(myObj.color);