Об’єктна-орієнтованість мови Java

На відміну від мови програмування С++, яка була попередницею мови Java, Java це повністю об’єктно-орієнтована мова програмування. В основі об’єктно-орієнтованого програмування лежать три парадигми: нащадкування, інкапсуляція та поліморфізм.

Парадігми об'єктно-орієнтованого програмування

Нащадкування це здатність класів бути породженим один від одного та спадкувати батьківські методи та властивості. Так, наприклад, клас «легковий автомобіль» може бути нащадком класу «автомобіль» і успадкувати від нього основні властивості (колір, виробник, рік випуску та інші) та методи (зміна кольору, отримання року випуску та інші). Крім того клас «легковий автомобіль» буде мати власні методи та властивості (наприклад, кількість пасажирів, тип кузову та інші).

Інкапсуляція дозволяє зберігати в середині класу як властивості, так і методи їх обробки. Використання інкапсуляції дозволяє обмежити доступ до частини властивостей та/або методів класу з інших об’єктів, а також заборонити пряме звернення до властивостей.

Інкапсуляція

Поліморфізм дає можливість виконувати обробку об’єкта як екземпляра різних класів, а також перевизначити в дочірніх класах деякі методи. Так, наприклад, об’єкт «автомобіль ЗАЗ» може розглядатися як екземпляр класу «автомобіль», так і як екземпляр класу «легковий автомобіль». Перевизначення в класі «легковий автомобіль» методу «зміна кольору» може дозволити задавати багатокольорову окраску легкового авто. Крім того, поліморфізм дозволяє виконувати оголошення в батьківських класах, так званих, «абстрактних» методів. Абстрактні методи оголошуються у батьківських класах, а реалізуються в класах-нащадках.
Попередня стаття
Наступна стаття