Page 32 - 6253
P. 32
Цей аспект ООП дає змогу створювати нові класи, які успадковують
функціональні можливості уже існуючих.
Поліморфізм
Концепція поліморфізму полягає в тому, що за допомогою одного інтерфейсу
реалізують декілька методів. Наприклад, під час створення різних об’єктів працює
метод create(), хоча для кожного з них його реалізовано по-різному. Вибір
конкретної дії (тобто методу) стосовно кожної ситуації перекладається на
компілятор або інтерпретатор. Програмістові необхідно запам’ятати, як застосувати
загальний інтерфейс: open, close тощо.
Спільна дія поліморфізму, інкапсуляції та наслідування
Найповніше ілюструє силу об’єктно-орієнтованого підходу приклад з
реального життя – об’єкт «автомобіль». Усі водії використовують наслідування для
управління різними типами засобів руху: автобусом, вантажним автомобілем і та
іншими засобами пересування. Постійно водії зустрічаються з інкапсульованими
засобами в автомобілі. Педалі гальма, акселератор, кермо – це частини складного
механізму, які пропонують простий інтерфейс, приховуючи при цьому конкретну
реалізацію дій. Нарешті, поліморфізм, демонструє здатність виробників автомобілів
пропонувати все нові варіанти одного і того ж за змістом транспортного засобу.
Адже в усіх автомобілях необхідно натиснути на педаль гальма, щоб зупинитись,
повернути кермо для зміни напряму руху і т. д.
Тобто, трансформація окремих деталей в об’єкт, який названо «автомобілем»,
досягається шляхом застосування інкапсуляції, наслідування і поліморфізму. Те ж
саме справедливо і для програм. Застосовуючи об’єктно-орієнтований підхід, різні
частини складної програми можна зібрати докупи з метою створення зв’язаного,
стійкого до помилок і працюючого цілісного коду.
2.2. Визначення класу
Класи є ядром мови Java. Найважливіше, що необхідно знати про клас – це те,
що він визначає новий тип даних. Один раз описаний клас можна надалі
використовувати з метою створення об’єктів цього класу. Отже, клас є шаблоном
(template) об’єкта, а об’єкт – екземпляром (instance) класу.
31