Зв’язки між класами та об’єктами: успадкування класів
За допомогою об’єктно-орієнтованого програмування є можливість описати різні об’єкти, їх характеристики та властивості. Об’єкти описуються за допомогою класів. Об’єкт це сутність зі своїми властивостями та характеристиками, яка може реагувати на повідомлення за допомогою своїх існуючих даних та з’являється при створення екземпляра класу або прототипу. Клас – це список характеристик та можливостей об’єкта. Наприклад, людина – це клас: у неї одна голова, дві руки, дві ноги, вона вміє ходити, розмовляти, бігати. А дівчина Олена це об’єкт класу людина, вона та інші люди схожі один до одного тільки тому що їх описує один загальний клас – людина. Але при цьому об’єкти відрізняються один від одного, тому що з впливом часу вони приймають унікальні риси. Класи та об’єкти це зовсім різні поняття, але дуже тісно зв’язані між собою. Припустимо, нам в програмі необхідно працювати з країнами. Країна – це абстрактне поняття. У неї є такі характеристики, як назва, населення, площа, прапор та інше. Для опису такої країни буде використовуватися клас з відповідними полями даних. Такі країни, як Росія і Україна будуть вже об’єктами (конкретними представниками типу країна).
У об’єктно-орієнтованому програмуванні існують таки зв’язки (відношення) між класами та об’єктами:
· асоціація;
· успадкування;
· агрегація;
· використання;
· інстанціювання;
· метаклас.