Font size
WorksheetsООП тема 4
Total questions: 27
Worksheet time: 27mins
Какви скоби се записват около параметърът Т в дефиницията на шаблонен/типизиран клас?
{ T }
[ T ]
( T )
< T >
Посочете правилната декларация на типизиран (шаблонен, generic) клас:
public Add (T element) {…}
public class Storage< T > {…}
public class T Item
private class List < T type > {…}
Посочете правилната декларация на типизиран (шаблонен, generic) клас:
public Add (T element) {…}
public class Person< T > {…}
public class T Item
private class List < type T > {…}
Дайте пример за деклариране на шаблонен интерфейс с име IBox.
Посочете вярното твърдение за наследяването в C#.
Позволява да ползваме обект в тази негова форма в която е само от гледната точка, която ни интересува, и да игнорираме всички останали детайли.
Скриват се ненужни детайли в класовете.
Наследяването позволява на един клас да преизползва поведение и характеристики от друг клас.
Наследяването позволява да се работи по еднакъв начин с различни обекти.
Посочете как се нарича класът, който дава своите членове на дъщерния си клас.
Посочете как се нарича класът, който наследява родителския клас.
Дайте пример за правилно деклариране на клас-наследник. Името на базовия клас е Animal, а името на клас-наследник е Cat.
Даден е клас Airplane за който приемете, че имате всички необходими атрибути записани правилно. Класът Airplane може ли да имплементира едновременно интерфейс и да наследява абстрактен клас?
Може ли клас да имплементира интерфейс и да наследява абстрактен клас?
Да, може, стига да е записано в правилна последователност първо имплементация на интерфейс, второ наследяването на абстрактен клас.
Да, може, стига да е записано в правилна последователност: първо наследяване на абстрактен клас, второ имплементация на интерфейс.
Не, не може. Класът Airplane може да имплементира само интерфейса, защото абстрактен клас не може да бъде наследен.
Не, не може. Класът Airplane може да наследи абстрактния клас само ако и абстрактния клас се казва Airplane.
Обяснете какво е презаписване (overriding) на метод.
Опишете какво се разбира под презареждане (overloading) на метод.
В един клас са дадени два метода: int Sum(int x, int y); int Sum(int x, int y, int z); Кое ни позволява да работим с методи с еднакви имена и различни аргументи?
Капсулацията
Наследяването
Абстрактността
Полиморфизма
Как се нарича възможността за работа с методи с еднакви имена и различни параметри в един клас?
Капсулация
Презареждане
Абстракция
Наследяване
Когато в родителски клас метод е деклариран като virtual, това означава, че наследниците:
са длъжни да го имплементират
не могат да го ползват (забранен е)
могат да го ползват и модифицират
са длъжни да го ползват
При наследяване е възможно класа наследник, да може да променя съдържанието на метод, който се наследява от родителския клас. Как трябва да е деклариран такъв метод в родителския клас?
override
public
internal
virtual
Даден e метод рublic virtual string SayHello ( ) {…} в родителски клас. В класа - наследник този метод може да се пренапише. Попълнете липсващата дума на мястото означено с (a) , така че да е записано правилно в класа-наследник.
Даден e метод public override string Jump ( ) {…} в дъщерен клас. В класа - наследник този метод задължително трябва да се пренапише. Попълнете липсващото на мястото означено с (a) , така че да е записано правилно в родителския клас.
Кое е добра практика за именуване на интерфейс:
IRead
IReadable
ReadInterface
Reading
Кое е добра практика за именуване на интерфейс:
Printable
IPrintable
Printing
Посочете колко интерфейса може да имплементира един клас.
Няма ограничение в броя
2
Класовете не могат да имплементират интерфейси.
10
Възможно ли е клас да имплементира интерфейс, в който не е деклариран нито един метод? Посочете верния отговор.
Да, възможно е, в интерфейса може да няма методи.
Не, не е възможно, защото не може да се декларира интерфейс без методи.
Да, възможно е, защото в интерфейса и без това не може да се декларират методи.
Не, няма как интерфейс без методи да се използва в клас.
Опишете каква е причината интерфейсът IObservable да е подчертан в червено?
Кой основен принцип на обектно-ориентираното програмиране позволява един обект да се използва в различни форми?
наследяване
енкапсулация
абстракция
полиморфизъм
Посочете основните принципи на обектно-ориентираното програмиране в C#. Посочете най-пълния отговор.
Капсулация, наследяване, полиморфизъм, статични класове.
Капсулация, наследяване, абстракция, полиморфизъм.
Капсулация, алгоритми, полимо
Кои са основните принципи на ООП в C#?
Капсулация, наследяване, полиморфизъм, статични класове.
Капсулация, наследяване, абстракция, полиморфизъм.
Капсулация, алгоритми, полиморфизъм, статични класове.
Методи, алгоритми, структури от данни, класове.
Когато в един клас има методи с еднакви имена, те задължително трябва да имат:
Различни модификатори
Различни по ред и тип аргументи
Различен тип на резултата и еднакви аргументи
Еднакъв тип на резултата и различни аргументи
