мування вимагає залишити осторонь характерні уявлення про програмування, які довгі роки розглядалися як стандартні. Однак після того, як це зроблено, об'єктно-орієнтоване програмування стає простим, наочним і чудовим засобом вирішення багатьох проблем, які доставляють неприємності традиційному програмному забезпеченню. p align="justify"> Метою даної роботи була розробка інформаційно-довідкової системи та розгляд теоретичного питання Класи і об'єкти в Pascal.
1. ТЕОРЕТИЧНА ЧАСТИНА. КЛАСИ І ОБ'ЄКТИ У PASCAL
Об'єктна модель, реалізована в Borland Pascal, за сучасними мірками є спрощеною, але вона дозволяє вивчити основні прийоми об'єктно-орієнтованого програмування та оцінити його переваги і недоліки.
У цій главі розглянуті засоби, що використовуються для оголошення класів та об'єктів, та принципи створення В«універсальнихВ» класів.
1.1 Оголошення класу. Поля і методи
З точки зору синтаксису клас являє собою структурний тип даних, в якому крім полів дозволяється описувати прототипи (заголовки) процедур і функцій, що працюють з цими полями даних. За формою опис класу нагадує запис. p align="justify"> Як вже згадувалося раніше, процедури і функції, заголовки яких описані в класі, отримали назву методів.
Опис типу клас виконується таким чином:
Туре <ім'я класу> = object
<опис полів класу>
<прототипи методів>
end; ...
Тіла методів класу описуються після оголошення класу. Причому в заголовку методу можна не повторювати списку параметрів, але перед ім'ям методу необхідно вказати ім'я класу, відокремивши його від імені методу крапкою: <ім'я класу>. <Ім'я методу>;
<локальні ресурси процедури>
Begin
<тіло процедури>
End; ... <ім'я класу>. <Ім'я методу>;
<; покальние ресурси функції>
<тіло процедури>; ...
1.2 Оголошення об'єкта. Ініціалізація полів
Описавши клас, ми можемо оголосити будь-яку кількість об'єктів цього
класу, причому можна оголосити окремі об'єкти, масиви об'єктів і покажчики на об'єкти даного класу.
Наприклад: A. 'TRoom; {об'єкт А класу TRoom}
B: array [1 .. 5] of TRoom; {масив об'єктів типу TRoom}
Type pTRoom = ^ TRoom; {тип покажчика на об'єкти класу TRoom} рС: pTRoom; {покажчик на об'єкти класу TRoom}
Як і для бу...