- •Передумови та історія виникнення об’єктно-орієнтованого підходу до створення програних систем.
- •Основні положення об’єктної моделі. Класи та об’єкти.
- •Відмінність між класом та об’єктом.
- •Складові класу. Поля класу. Методи класу.
- •Позначення класу. Задання видимості членів класу.
- •Інкапсуляція, наслідування та поліморфізм.
- •Реалізація класу та створення його екземпляру за допомогою об’єктно-орієнтованої мови програмування.
- •Декларування класу. Створення екземпляру класу.
- •Правила приведення типів в c#.
- •Модифікатори доступу.
- •Методи. Параметри. Перевантаження методів.
- •Члени класу. Члени екземпляру класу.
- •Статичні поля. Статичні методи. Інші статичні члени класу.
- •Константи. Властивості.
- •Конструктори об’єктів. Статичні конструктори. Фіналізатори.
- •Порівняння конструкторів і фіналізаторів.
- •Модифікатор readonly. Ключове слово this.
- •Індексатори. Часткові класи.
- •Модифікатори доступу на аксцессорах.
- •Наслідування класів.
- •Доступ до наслідуваних методів. Приховування методів базового класу.
- •Доступ до базового класу. Використання посилань на базовий клас.
- •Віртуальні методи. Виконання конструктора.
- •Модифікатори доступу до класу. Наслідування між збірками.
- •Модифікатори доступу до членів класу.
- •Абстрактні члени класу. Абстрактні класи.
- •Запечатані класи. Зовнішні методи.
- •Виключні ситуації.
- •Інтерфейси.
- •Делегати.
- •Перевантаження операцій.
- •Основні принципи побудови графічного інтерфейсу користувача та програм, які керуються подіями.
- •Створення форм та управління ними. Модальні і немодальні форми.
- •Основні елементи графічного інтерфейсу користувача.
- •Клас Application.
- •Основні властивості і події елементів інтерфейсу.
- •Основні властивості і події форми.
- •Елемент управління Button. Елемент управління MenuStrip. Елемент управління ConextMenuStrip.
- •Елемент управління CheckBox. Елемент управління RadioButton. Елемент управління
- •Елемент управління ListBox. Елемент управління ComboBox. Елемент управління Label.
- •Елемент управління TextBox. Елемент управління ToolStrip. Настроювання переходів по табуляції.
- •Елемент управління MonthCalendar. Елемент управління DateTimePicker.
- •Елемент управління ToolTip. Елемент управління TabControl. Елемент управління TrackBar.
- •Елемент управління Panel. Елемент управління SplitContainer. Елементи управління UpDown.
- •Клас Graphics. Сеанси Paint. Доступ до об’єкта Graphics поза обробником Paint.
- •Основи реляційної субд. Основні принципи роботи з субд.
- •Введення до технології ado.Net. Створення найпростішої програми для роботи з субд.
- •Послідовність команд для читання даних з бд.
Індексатори. Часткові класи.
Індексатори створюються для того, щоб маніпулювати із полями екземпляру класу подібно до масиву.
Індексатор фактично представляє собою набір get і set аксцессорів, схожих до таких, які використовуються у властивостях.
Декларування індексатору на відміну від властивості має список параметрів, які розміщуються в квадратних дужках, цей список параметрів не може бути порожнім,замість імені використовується слово «this». Так само як і властивість,індексатор має тип даних і має аксцесори «set» « get».
Реалізація аксцесору «set» .Розглянувши параметри індексатора визначити де зберігаються дані, а потім зберегти.Код в правій частині показує що аксцессор використовує той самий список параметрів, щол був представлений при декларуванні індексатора, не повертає значення void,має наявний параметр value.
Аксцесор get повинен розглянувши параметри індексатора визначити які дані потрібно повернути.
Приклад використання індексатору
Часткові класи
Декларація класу може містити декілька окремих частин як в одному файлі, так і в різних файлах.
Приклад використання часткових класів
Модифікатори доступу на аксцессорах.
За замовчуванням аксцессори мають такий самий рівень доступу, як і властивість, яку вони реалізують.
В окремих випадках можливо обмежувати доступ на рівні аксцессорів, однак слід керуватися ієрархією модифікаторів – доступ можна обмежувати лише від вищого до нижчого рівня
Наслідування класів.
Можна використовувати існуючий клас як основу для створення нового класу. В такому разі існуючий клас називається базовим класом, а новий– наслідуваним класом.
Члени наслідуваного класу складаються з наступного:
члени класу, які були задекларовані у ньому самому;
члени базового класу.
Наслідуваний клас не може видаляти існуючі члени базового класу.
Доступ до наслідуваних методів. Приховування методів базового класу.
Виведення на екран:
Приховування членів базового класу
Доступ до базового класу. Використання посилань на базовий клас.
Іноді виникає необхідність звернутися до члену базового класу, який був прихований у наслідуваному класі:
Віртуальні методи. Виконання конструктора.
Віртуальні методи дозволяють базовому класу отримати доступ до членів наслідуваного класу
Особливості віртуальних методів
Віртуальні методи у базовому та наслідуваних класах повинні мати однакову видимість
Не можна перекривати (override) статичні методи, чи методи, які не були позначені ключовим словом virtual
Крім методів віртуальними можуть бути властивості, індексатори та події
Виконання конструктора
Конструктор виконується при створенні класу, клас може мати декілька перевантажених конструкторів.
Ініціалізація членів екземпляру класу
Виклик конструктору базового класу
Виконання тіла конструктору екземпляру класу
Послідовність операцій при виконанні конструктора
