Успадковування
Поняття класу приводить нас до поняття успадковування. У повсякденному житті ми часто стикаємося з розбиттям класів на підкласи: наприклад, клас тварин можна розбити на підкласи ссавці, земноводні, комахи, птахи, клас студенти технікуму на класи: програмісти, економісти, статистики та ін.
Принципи, покладені в основу такого поділу, полягають в тому, що кожен підклас володіє властивостями, притаманними тому класу, з якого виділений даний підклас: студенти всіх відділень є і студентами технікуму. Крім тих властивостей, які є спільними у даного класу і підкласу, підклас може мати і власні властивості: студенти-програмісти навчаються 4 роки, студенти-статистики – 3 роки. Ілюстрація цієї ідеї приведена на рисунку 4.
Рисунок 4 Успадковування
В програмуванні клас теж може породити значне число підкласів. Клас, який породжує всі інші класи, називається базовим класом, інші класи успадковують його властивості, одночасно володіючи власними властивостями. Такі класи називаються похідними класами.
Не проводьте хибних аналогій між відношенням «об’єкт-клас» і «базовий клас – похідний клас». Об’єкти, що існують в пам’яті комп’ютера, є втіленням властивостей, притаманних класу, до якого вони належать. Похідні класи мають властивості як успадковані від базового класу, так і свої власні.
Успадковування можна вважати аналогом використання функцій в процедурному підході. Якщо ми виявимо кілька функцій, що здійснюють схожі дії, то видобудемо з них ідентичну частину і винесемо в окрему функцію. Тоді вихідні функції будуть однаковим чином викликати свою спільну частину, і в той же час в кожній з них будуть свої власні інструкції. Базовий клас містить елементи, спільні для групи похідних класів. Роль успадковування в ООП така ж, як і у функцій в процедурному програмуванні – зменшити розмір коду і спростити зв’язки між елементами програми.
Дата добавления: 2015-08-26; просмотров: 545;