Портал освітньо-інформаційних послуг «Студентська консультація»

  
Телефон +3 8(066) 185-39-18
Телефон +3 8(093) 202-63-01
 (093) 202-63-01
 studscon@gmail.com
 facebook.com/studcons

<script>

  (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){

  (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),

  m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)

  })(window,document,'script','//www.google-analytics.com/analytics.js','ga');

 

  ga('create', 'UA-53007750-1', 'auto');

  ga('send', 'pageview');

 

</script>

Об’єктно-орієнтоване програмування

Тип роботи: 
Курсова робота
К-сть сторінок: 
35
Мова: 
Українська
Оцінка: 

+ Box;

}
Оператор інкремента збільшує свій операнд на 1, а оператор декременту зменшує свій операнд на 1.
Тобто, оператор: x++; Збільшує на одиницю змінну x.
А оператор: х--; зменшує на одиницю змінну х.
В мові C# існує дві форми розглянутих операцій: префіксна і постфіксна. Якщо оператори ++ або -- записані після змінної (так, як написано вище) – це постфіксна форма. При цьому послідовно відбуваються наступні дії: старе значення змінної зберігається для використання в подальшому вираженні, в якому зустрілася ця змінна; І тільки після цього її значення ВІДРАЗУ Ж змінюється на 1. Якщо ці оператори записані перед змінної, ось так: ++х або --х, то це префиксна форма. При цьому послідовність дій така: СПОЧАТКУ змінна змінюється на 1; і тільки після цього використовується у виразі. Але якщо інкремент або декремент виконуються як абсолютно окремий від інших виразів оператор, то префиксна і Постфіксна форма призводять до однакового результату, тобто, при такому використанні немає ніякої різниці, де ми пишемо оператор.
Перевантаження операцій інкременту та декременту.
Для перевантаження оператора на користувальницький клас потрібне створення методу на класі з правильним підписом. Метод повинен бути названий «оператор Х», де Х є назва або символ оператора перевантаження. Унарні оператори мають один параметр, і бінарні оператори мають два параметри. У кожному випадку один параметр повинен бути того ж типу, класу або структури, яка оголошує оператор.
Спадкоємство є основною концепцією об’єктна-орієнтовного програмування (ООП). З його допомогою створюється ієрархія класів. Спадкоємство використовується для розширення функціональних можливостей класу. При цьому похідний клас успадковує усі методи і властивості базового класу. На відміну від С++, у С# заборонено множинне спадкоємство, тобто клас може успадкувати властивості і методи тільки від одного базового класу (предка). Множинне спадкоємство можна реалізувати за допомогою інтерфейсів. Таким чином, с С# є два типи спадкоємства: спадкоємство реалізації і спадкоємство інтерфейсів.
Механізм спадкоємства класів надає великі можливості організації коду і його багатократного використання. Вибір найбільш відповідних засобів для цілей конкретного проекту ґрунтується на знанні механізму їх роботи і взаємодії. Спадкоємство – важлива риса об’єктна-орієнтованого програмування. Воно призначене для відображення такої риси програмних систем як ієрархічність. Створення ієрархії класів дозволяє розширювати функціональні можливості класів в похідних класах, а також повторно використовувати код методів базових класів.
Спадкування буває відкритим (Public), закритим (Private) та захищеним (Protected). У всіх випадках клас D отримує доступ до відкритих і захищених членів B. Відмінності:
1. Відкрите – Відкриті члени B стають відкритими в D. Захищені B – захищеними D. Кажуть, що клас успадковує як інтерфейс, так і реалізацію предка.
2. Закрите – Відкриті і захищені члени B стають закритими в D. Застосовують коли клас повинен наслідувати тільки реалізацію.
3. Захищене – відкриті і захищені члени B стають захищеними в D.
Множинне спадкування в C# реалізується через інтерфейси.
Абстрактні класи і методи – при створенні ієрархії об’єктів для виключення коду, що повторюється, часто буває логічно виділити їх загальні властивості в один базовий клас. При цьому може виявитися, що створювати екземпляри такого класу не має сенсу, тому що жлдні реальні об’єкти їм не відповідають. – Такі класи називають абстрактними.
В абстрактному класі визначаються лише загальні призначення методів, які повинні бути реалізовані в похідних класах, але сам по собі цей клас не містить реалізації методів, а тільки їх сигнатуру (тип значення, що повертається, ім’я методу і список параметрів).
При оголошенні абстрактного методу використовується модифікатор abstract, Абстрактний метод автоматично стає віртуальним, так що модифікатор virtual при оголошенні методу не використовується.
Абстрактний клас призначений тільки для створення ієрархії класів, не можна створити об’єкт абстрактного класу.
Якщо в класі є хоч би один абстрактний метод, весь клас також має бути описаний як абстрактний.
Поліморфізм – одна з базових концепцій об’єктна-орієнтованого програмування, що дозволяє мати різні реалізації для одного і того ж методу, які будуть вибиратися залежно від типу об’єкту, переданого до методу при його виклику. Ця концепція с реалізується як перевантаження (методів, операцій).
При визначенні віртуального методу у складі базового класу перед типом значення, що повертається, указується ключове слово virtual а при перевизначенні віртуального методу в похідному класі використовується модифікатор override. Віртуальний метод не може бути визначений з модифікатором static або abstract. Перевизначений віртуальний метод повинен мати такий саме набір параметрів, як і однойменний метод базового класу. За допомогою віртуальних методів реалізується один з основних принципів об’єктно-орієнтованого програмування – поліморфізм. Це слово в перекладі з грецького означає «багато форм», що в даному випадку означає «один виклик – багато методів».
Динамічні структури даних – це структури даних, пам'ять під які виділяється і звільняється в міру необхідності. Динамічні структури даних в процесі існування в пам'яті можуть змінювати не тільки число складових їх елементів, а й характер зв'язків між елементами. При цьому не враховується зміна вмісту самих елементів даних. Така особливість динамічних структур, як мінливість їх розміру та характеру відносин між елементами, призводить до того, що на етапі створення машинного коду програма-компілятор не може виділити
Фото Капча