wayground logo

Free Printable Worksheets

Font size

S
M
L
XL
Worksheets

ООП тема 4

Total questions: 27

Worksheet time: 27mins

Name
Class
Date
1.

Какви скоби се записват около параметърът Т в дефиницията на шаблонен/типизиран клас?

a)

{ T }

b)

[ T ]

c)

( T )

d)

< T >

2.

Посочете правилната декларация на типизиран (шаблонен, generic) клас:

a)

public Add (T element) {…}

b)

public class Storage< T > {…}

c)

public class T Item

d)

private class List < T type > {…}

3.

Посочете правилната декларация на типизиран (шаблонен, generic) клас:

a)

public Add (T element) {…}

b)

public class Person< T > {…}

c)

public class T Item

d)

private class List < type T > {…}

4.

Дайте пример за деклариране на шаблонен интерфейс с име IBox.

4 lines
5.

Посочете вярното твърдение за наследяването в C#.

a)

Позволява да ползваме обект в тази негова форма в която е само от гледната точка, която ни интересува, и да игнорираме всички останали детайли.

b)

Скриват се ненужни детайли в класовете.

c)

Наследяването позволява на един клас да преизползва поведение и характеристики от друг клас.

d)

Наследяването позволява да се работи по еднакъв начин с различни обекти.

6.

Посочете как се нарича класът, който дава своите членове на дъщерния си клас.

4 lines
7.

Посочете как се нарича класът, който наследява родителския клас.

4 lines
8.

Дайте пример за правилно деклариране на клас-наследник. Името на базовия клас е Animal, а името на клас-наследник е Cat.

4 lines
9.

Даден е клас Airplane за който приемете, че имате всички необходими атрибути записани правилно. Класът Airplane може ли да имплементира едновременно интерфейс и да наследява абстрактен клас?

4 lines
10.

Може ли клас да имплементира интерфейс и да наследява абстрактен клас?

a)

Да, може, стига да е записано в правилна последователност първо имплементация на интерфейс, второ наследяването на абстрактен клас.

b)

Да, може, стига да е записано в правилна последователност: първо наследяване на абстрактен клас, второ имплементация на интерфейс.

c)

Не, не може. Класът Airplane може да имплементира само интерфейса, защото абстрактен клас не може да бъде наследен.

d)

Не, не може. Класът Airplane може да наследи абстрактния клас само ако и абстрактния клас се казва Airplane.

11.

Обяснете какво е презаписване (overriding) на метод.

4 lines
12.

Опишете какво се разбира под презареждане (overloading) на метод.

4 lines
13.

В един клас са дадени два метода: int Sum(int x, int y); int Sum(int x, int y, int z); Кое ни позволява да работим с методи с еднакви имена и различни аргументи?

a)

Капсулацията

b)

Наследяването

c)

Абстрактността

d)

Полиморфизма

14.

Как се нарича възможността за работа с методи с еднакви имена и различни параметри в един клас?

a)

Капсулация

b)

Презареждане

c)

Абстракция

d)

Наследяване

15.

Когато в родителски клас метод е деклариран като virtual, това означава, че наследниците:

a)

са длъжни да го имплементират

b)

не могат да го ползват (забранен е)

c)

могат да го ползват и модифицират

d)

са длъжни да го ползват

16.

При наследяване е възможно класа наследник, да може да променя съдържанието на метод, който се наследява от родителския клас. Как трябва да е деклариран такъв метод в родителския клас?

a)

override

b)

public

c)

internal

d)

virtual

17.

Даден e метод рublic virtual string SayHello ( ) {…} в родителски клас. В класа - наследник този метод може да се пренапише. Попълнете липсващата дума на мястото означено с (a)   , така че да е записано правилно в класа-наследник.

18.

Даден e метод public override string Jump ( ) {…} в дъщерен клас. В класа - наследник този метод задължително трябва да се пренапише. Попълнете липсващото на мястото означено с (a)   , така че да е записано правилно в родителския клас.

19.

Кое е добра практика за именуване на интерфейс:

a)

IRead

b)

IReadable

c)

ReadInterface

d)

Reading

20.

Кое е добра практика за именуване на интерфейс:

a)

Printable

b)

Print

c)

IPrintable

d)

Printing

21.

Посочете колко интерфейса може да имплементира един клас.

a)

Няма ограничение в броя

b)

2

c)

Класовете не могат да имплементират интерфейси.

d)

10

22.

Възможно ли е клас да имплементира интерфейс, в който не е деклариран нито един метод? Посочете верния отговор.

a)

Да, възможно е, в интерфейса може да няма методи.

b)

Не, не е възможно, защото не може да се декларира интерфейс без методи.

c)

Да, възможно е, защото в интерфейса и без това не може да се декларират методи.

d)

Не, няма как интерфейс без методи да се използва в клас.

23.

Опишете каква е причината интерфейсът IObservable да е подчертан в червено?

4 lines
24.

Кой основен принцип на обектно-ориентираното програмиране позволява един обект да се използва в различни форми?

a)

наследяване

b)

енкапсулация

c)

абстракция

d)

полиморфизъм

25.

Посочете основните принципи на обектно-ориентираното програмиране в C#. Посочете най-пълния отговор.

a)

Капсулация, наследяване, полиморфизъм, статични класове.

b)

Капсулация, наследяване, абстракция, полиморфизъм.

c)

Капсулация, алгоритми, полимо

26.

Кои са основните принципи на ООП в C#?

a)

Капсулация, наследяване, полиморфизъм, статични класове.

b)

Капсулация, наследяване, абстракция, полиморфизъм.

c)

Капсулация, алгоритми, полиморфизъм, статични класове.

d)

Методи, алгоритми, структури от данни, класове.

27.

Когато в един клас има методи с еднакви имена, те задължително трябва да имат:

a)

Различни модификатори

b)

Различни по ред и тип аргументи

c)

Различен тип на резултата и еднакви аргументи

d)

Еднакъв тип на резултата и различни аргументи