русс | укр

Мови програмуванняВідео уроки php mysqlПаскальСіАсемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование


Linux Unix Алгоритмічні мови Архітектура мікроконтролерів Введення в розробку розподілених інформаційних систем Дискретна математика Інформаційне обслуговування користувачів Інформація та моделювання в управлінні виробництвом Комп'ютерна графіка Лекції


Характеристики об’єктно орієнтованих мов


Дата додавання: 2014-04-22; переглядів: 891.


Далі ми розглянемо кілька основних елементів, що входять до складу об’єктно-орієнтованих мов, зокрема до складу мови С++.

Об’єкти

Першою проблемою при розв’язуванні задачі за допомогою ООП є проблема розбивання її на об’єкти. Мислення в термінах об’єктів виявляється значно простішим і наочнішим, ніж у термінах функцій, оскільки програмні об’єкти схожі на об’єкти реального світу.

Що повинне представлятися в програмі у вигляду об’єктів? Це залежить від типу задачі і уяви розробника. Можливі такі варіанти:

Ø Фізичні об’єкти

· Автомобілі при моделюванні вуличного руху

· Елементи схеми при моделюванні електромережі

· Країни при створенні економічної моделі

· Літаки при моделюванні диспетчерської системи

 

Ø Елементи інтерфейсу

· Вікна

· Кнопки

· Меню

· Випадаючі списки

· Поля введення і поля редагування

· Графічні об’єкти (лінії, прямокутники, круги)

· Миша, клавіатура, дискові пристрої, принтери

 

Ø Структури даних

· Масиви

· Стеки

· Черги

· Дерева

· Зв’язані списки

 

Ø Групи людей

· Співробітники

· Студенти

· Покупці

· Продавці

 

Ø Сховища даних

· Інвентарні описи

· Перелік номенклатур

· Списки співробітників

· Словники

 

Відповідність між програмними і реальними об’єктами є наслідком об’єднання даних і функцій. Ні одна програмна модель, створена на основі процедурного підходу, не відображала існуючі речі так точно, як це вдалося зробити за допомогою об’єктів.

 

Класи

Коли ми говоримо про об’єкти, то кажемо, що вони є екземплярами класів. Розглянемо таку аналогію. Практично всі комп’ютерні мови мають стандартні типи даних, у мові С є цілий тип int. Ми можемо визначити змінні таких типів у наших програмах:

int day;

int divisor;

int n;

Так описані змінні відразу дістають певні властивості (наприклад, розмір sizeof), визначаються операції, які можна з ними проводити (додавання, віднімання, множення, ділення націло, остача від ділення). Подібним способом ми можемо визначати об’єкти класу, як це показано на рисунку 3. Клас є свого роду формою, що визначає, які дані і функції будуть включені в об’єкт класу. При оголошенні класу не створюються ніякі об’єкти цього класу, по аналогії з тим, що існування типу int ще не означає існування змінних цього типу.

 

Рисунок 3. Клас і його об’єкти

Таким чином, клас є описом сукупності схожих між собою об’єктів. Об’єкт класу часто називають також екземпляром класу.

 


<== попередня лекція | наступна лекція ==>
Об’єктно орієнтований підхід | Успадковування


Онлайн система числення Калькулятор онлайн звичайний Науковий калькулятор онлайн