За въпроси: 02 468 29 53, 02 971 83 90
ОБЕКТНО-ОРИЕНТИРАНО ПРОГРАМИРАНЕ
Иван Иванов, Петър Стойков, Васил Тотев, Ива Костадинова
Част 1
София • 2018
В учебника "ОБЕКТНО-ОРИЕНТИРАНО ПРОГРАМИРАНЕ" са разгледани основните правила на синтаксиса и семантиката на езика C#. Разкрити са основните понятия на обектно-ориентираното програмиране. Разгледана е общата форма за дефиниране на класовете, създаването на обекти, методи и конструктори. Разкрита е същността на Garbage Collector и използването на деструктори.
По-подробно е разгледано управлението на достъпа до члено-ве от класа, предаването на обекти към методи чрез указатели, използването на модификатори на параметрите ref и out, използването на променлив брой аргументи с помощта на модификатора params и връщането на обекти от методи.
В раздела „Задачи за самостоятелна работа“ студентите имат възможност да проверят знанията и практическите си умения, с разработени примери на задачи с различна сложност. В случай че зна-нията и уменията им позволяват, те могат да усъвършенстват пред-ложените варианти за решение, както и да разработят други подоб-ни примери. Разгледаните примери са част от подготовката за пред-видените контролни занятия и семестриалните изпити.
Освен това в раздела „Въпроси за проверка на знанията“ са представени над 100 въпроса, отново с цел проверка на знанията и уменията. Те могат да се разглеждат като текущ тест, на които сту-дентите трябва да могат да отговарят по време на практическите занятия.
Учебникът е предназначен за студенти, изучаващи дисциплината Обектно-ориентирано програмиране в Университета по библиотекознание и информационни технологии. Може да се използва от докторанти и от всички желаещи да изучават програмния език С#.
ПРЕДГОВОР
ГЛАВА 1. ВЪВЕДЕНИЕ В КЛАСОВЕ, ОБЕКТИ И МЕТОДИ
1.1. Основни положения за класовете
1.1.1. Обща форма при дефиниране на класа
1.1.2. Дефиниране на клас
1.2. Създаване на обекти
1.2.1. Променливи от типа указател
1.3. Методи
1.3.1. Добавяне на методи в класа Book
1.3.2. Завършване на изпълнението на метода
1.3.3. Връщане на стойности
1.3.4. Модификатори const и readonly
1.3.5. Използване на параметризирани методи
1.3.6. Недостъпен код
1.4. Дефиниция на клас
1.5. Създаване на два класа в отделни файлове
1.6. Създаване на два проекта в един солюшън
ГЛАВА 2. КОНСТРУКТОРИ
2.1. Видове конструктори
2.1.1. Конструктор по подразбиране
2.1.2. Празен конструктор
2.1.3. Конструктор без параметри
2.1.4. Модификатор за достъп internal
2.1.5. Параметризиран конструктор
2.2. Конструктори и инлайн (inline) инициализация
2.3. Оптимизация на програмния код с добавяне на метод в класа
2.4. Предефиниране на конструктори
2.5. Ключовата дума this
2.6. Верижно извикване на конструктори
2.8. Използване на ключовата дума static при член-данни и конструктори на клас
ГЛАВА 3. ОТНОВО МЕТОДИ
3.1. Деклариране на методи в даден клас и осигуряване на достъп до тях
3.2. Видимост на полета и методи
3.3. Използване на променлив брой аргументи
3.4. Връщане на обекти от методи
3.5. Предефиниране на методи
3.6. Методът Main( )
ГЛАВА 4. ИНДЕКСАТОРИ И СВОЙСТВА
4.1. Индексатори (Indexers)
4.2 Свойства (Properties)
4.3 Използване на индексатори и свойства
4.4 Статични свойства
ГЛАВА 5. ИЗБРОИМ ТИП (ENUMERATION) И ВЛОЖЕНИ КЛАСОВЕ (NESTED CLASSES)
5.1. Изброим тип (enumeration/enum)
5.2. Вложени класове (nested classes)
ЗАДАЧИ ЗА САМОСТОЯТЕЛНА РАБОТА
Задача 1. Class Product
Задача 2. Няколко обекта от class Product
Задача 3. Class Student
Задача 4. Class Book
Задача 5: Class BookInfo
Задача 6. Електронен магазин
Задача 7. Закупуване на книги
Задача 8. Критичен брой книги
Задача 9. Разширена функционалност
ВЪПРОСИ ЗА ПРОВЕРКА НА ЗНАНИЯТА
ЛИТЕРАТУРА