wayground logo

Free Printable Worksheets

NEW

Font size

S
M
L
XL
Worksheets

OOP, access modifiers, properties

Total questions: 20

Worksheet time: 10mins

Name
Class
Date
1.

Який з наступних спеціфікаторів доступу в C# найменше обмежує доступ до поля класу?

a)

private

b)

protected

c)

internal

d)

public

2.

Які з наступних типів даних є значимими типами даних (value types) в C#?

a)

int, float, string

b)

class, interface, enum

c)

enum, bool

3.

Як називається процес приховування внутрішнього стану об'єкта від зовнішнього доступу?

a)

Унаслідування

b)

Інкапсуляція

c)

Поліморфізм

d)

Абстракція

4.

Яке ключове слово використовується для створення об'єкта класу в C#?

a)

create

b)

new

c)

instance

d)

object

5.

Як називається процес, при якому об'єкт одного класу може бути використаний замість об'єкта іншого класу з однаковим інтерфейсом?

a)

Інкапсуляція

b)

Поліморфізм

c)

Спадкування

d)

Абстракція

6.

Які з наступних спеціфікаторів доступу вказують на те, що поле чи властивість доступні тільки у межах класу, в якому вони оголошені?

a)

public

b)

protected

c)

private

d)

internal

7.

Які з наступних спеціфікаторів доступу дозволяють доступ до поля чи властивості з будь-якого місця у програмі?

a)

private

b)

protected

c)

internal

d)

public

8.

Які з наступних ключових слів використовуються для оголошення властивостей (properties) в C#?

a)

get та set

b)

field та value

c)

var та const

d)

method та class

9.

Що таке автозгенерована властивість (auto-generated property) в C#?

a)

Властивість, яка генерується автоматично зі стандартними get і set методами

b)

Властивість, яка генерується без будь-яких методів

c)

Властивість, яка вимагає власної реалізації get і set методів

d)

Властивість, яка може бути доступна тільки у базовому класі

10.

Як можна задати початкове значення для автозгенерованої властивості в C#?

a)

За допомогою оператора "new"

b)

Використовуючи ключове слово "default"

c)

Вказуючи початкове значення в реалізації "get" або "set" методів

d)

Використовуючи оператор присвоєння "=" в оголошенні властивості

11.

Як виглядає оголошення автозгенерованої властивості з початковим значенням за замовчуванням?

a)

public int MyProperty { get; set; } = 10;

b)

public int MyProperty = 10;

c)

public int MyProperty { get; set; } default 10;

d)

public int MyProperty { get; set; default 10; }

12.

Які з наступних спеціфікаторів доступу вказують на те, що поле чи властивість можуть бути доступні тільки в межах поточного класу та його похідних класів?

a)

private

b)

protected

c)

internal

d)

public

13.

Як можна уникнути прямого доступу до поля класу та забезпечити доступ до нього через властивість?

a)

Встановити поле як public

b)

Заборонити доступ до поля

c)

Використовувати ключове слово "readonly" для поля

d)

Створити властивість з методами get і set

14.

Яка основна різниця між полем і властивістю (property) в C#?

a)

Поля можуть бути статичними, властивості - ні.

b)

Поля можуть бути доступні з будь-якого класу, властивості - тільки зі свого класу.

c)

Властивості завжди мають методи get і set, а поля - ні.

d)

Властивості завжди мають значення за замовчуванням, поля - ні.

15.

Яким чином можна оголосити властивість, яка доступна тільки для читання ззовні класу?

a)

public int MyProperty { get; }

b)

public int MyProperty { set; }

c)

public int MyProperty { readonly get; }

d)

public int MyProperty { readonly set; }

16.

Як можна заборонити доступ до властивості ззовні класу?

a)

Встановити властивість як private

b)

Встановити властивість як public

c)

Встановити властивість як internal

d)

Встановити властивість як protected

17.

Що таке інкапсуляція в контексті властивостей (properties) в C#?

a)

Властивість забезпечує доступ до поля

b)

Властивість має методи get і set

c)

Властивість приховує деталі реалізації поля

d)

Властивість завжди є статичною

18.

Які з наступних спеціфікаторів доступу вказують на те, що поле чи властивість можуть бути доступні в межах поточного проекту (assembly)?

a)

private

b)

protected

c)

internal

d)

public

19.

Як можна визначити власну логіку для методу set властивості в C#?

a)

Використовувати ключове слово "custom"

b)

Вказати метод "set" зі своєю реалізацією

c)

Використовувати ключове слово "value" у методі "set"

d)

Заборонити перевизначення методу "set"

20.

Яка основна перевага використання властивостей (properties) над публічними полями (public fields) в C#?

a)

Властивості можуть мати власну логіку для доступу до даних.

b)

Поля завжди є статичними, властивості - ні.

c)

Властивості завжди мають значення за замовчуванням, поля - ні.

d)

Поля завжди мають методи get і set, властивості - ні.