- •Передумови та історія виникнення об’єктно-орієнтованого підходу до створення програних систем.
- •Основні положення об’єктної моделі. Класи та об’єкти.
- •Відмінність між класом та об’єктом.
- •Складові класу. Поля класу. Методи класу.
- •Позначення класу. Задання видимості членів класу.
- •Інкапсуляція, наслідування та поліморфізм.
- •Реалізація класу та створення його екземпляру за допомогою об’єктно-орієнтованої мови програмування.
- •Декларування класу. Створення екземпляру класу.
- •Правила приведення типів в 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. Створення найпростішої програми для роботи з субд.
- •Послідовність команд для читання даних з бд.
Члени класу. Члени екземпляру класу.
Мова С# всього налічує 9 можливих членів класу:ПоляКонстанти Методи
ВластивостіКонструкториФіналізатори Оператори ІндексаториПодії.
Поля і константи зберігають дані, усі інші члени класу пов'язані з програмним кодом.
Члени класу можуть бути асоційовані із екземпляром, чи із самим класом.
По замовчуванню вони асоціюються із екземпляром - це означає, що
кожен об'єкт має власну копію і вони називаються членами
екземпляру класу. Відповідно, зміни до значень у одному екземплярі
класу не впливають на значення у інших.
Статичні поля. Статичні методи. Інші статичні члени класу.
Класи можуть мати також статичні поля, які є загальними для всіх екземплярів одного класу, оскільки зай мають одну область пам'яті.
Для їх декларування використовується ключове слово “static”.
Життєвий цикл статичних членів класу
На відміну від членів екземпляру класу, статичні члени існують навіть тоді, коли не було створено жодного екземпляру класу.
Класи можуть мати також і статичні методи, які можна викликати не створюючи екземпляру класу.
Статичні методи можуть мати доступ лише до статичних полів і не мають до ступу до членів екземпляру класу.
Схема виклику статичного методу
Лише позначені члени класу можуть бути статичними:
Fields.constants.methods.properties.constructor
s.finalizers.operators.indexers
Константи. Властивості.
Константа містить значення, яке не може бути змінене при виконанні програми.
При декларації константи обов'язковою є її ініціалізація початковим значенням.
Видимість констант відповідає статичним змінним.
Константи можуть бути членами класу, а можуть бути задекларовані локально
Властивості - це члени класу, основна задача яких -
забезпечення доступу до полів.
За своєю поведінкою вони схожі до полів, однак, на відміну від
них, вони самі не зберігають даних, а в процесі звертання до них
виконується програмний код.
Формально властивість є іменованим набором двох методів, які
мають назву аксцессори:
аксцессор set призначений для запису значення до властивості;
аксцессор get призначений для зчитування значення з властивості.
Аксцессор set повинен відповідати вимогам:
не повинен мати явних параметрів, має єдиний неявний параметр за значенням з назвою value такого ж типу, як і властивість;
не повертати значення (бути void)
Аксцессор get повинен відповідати вимогам:
не приймати параметрів;
тип значення, яке повертається, має відповідати типу властивості.
Статичні властивості:
Статичні властивості мають наступні особливості:
Вони не можуть мати доступ до членів екз.класу.
Вони існують незалежно від того чи створені екз.класу.
Коли до них здійснюється доступ з-за меж класу потрібно посилатися на імя класу,а не на імя його екземпляру,тобто обєкту.
