INHERITED Done;

End;

§10.4. Динамические объекты

Все экземпляры объектных типов, так же, как и значения любых других типов, могут быть представлены в программе либо посредством описаний с использованием служебного слова Var, либо динамически, что используется гораздо чаще. Если динамический объект содержит виртуальные методы, то он должен инициализироваться с помощью вызова конструктора, например следующим образом:

Var

OneP: ^Point;

New (OneP);

OneP^.Create (50, 100);

x1 := OneP^.CetX;

Затем вызовы методов могут происходить обычным образом с использованием указателя. Турбо Паскаль допускает использование расширенной процедуры New, совмещающей создание объекта и его инициализацию, которая имеет два параметра: имя указателя и имя конструктора:

New (OneP, Create(50,100));

Здесь вызов конструктора не содержит составного имени, так как первый параметр однозначно определяет, из какого объектного типа берется конструктор.

Аналогично для освобождения памяти при позднем связывании используется процедура Dispose с расширенным синтаксисом:

Dispose (OneP, Done);

Самостоятельный вызов деструктора вне процедуры Dispose не приведет к освобождению памяти, занимаемой экземпляром объекта.

Скрытые поля и методы

Часть полей и методов объектных типов можно объявить как скрытые. Смысл введения таких компонент заключается в ограничении области видимости их имен, так же, как и в модулях. Для этих целей в Турбо Паскале дополнительно введены два служебных слова PRIVATE и PUBLIC. В итоге описание объекта в полной форме выглядит следующим образом:

НЕ нашли? Не то? Что вы ищете?

Type

NewObject = OBJECT (<родитель>);

<поля>; { общедоступные }

<методы>; { общедоступные }

PRIVATE

<поля>; { скрытые }

<методы>; { скрытые }

PUBLIC

<поля>; { общедоступные }

<методы>; { общедоступные }

End;

Объекты наиболее сильно подвергаются изменениям от версии к версии, поэтому в Delphi использование объектов несколько отличается от использования в Турбо Паскале 7.0.

Контрольные вопросы

1.  Назовите первые объектно-ориентированные языки программирования.

2.  Какую структуру имеет классификация различных объектов?

3.  Как называется более низкий уровень иерархии относительно текущего?

4.  Как называется более высокий уровень иерархии относительно текущего?

5.  Поясните понятие «иерархия объекта».

6.  Поясните понятие «методы объекта».

7.  Какое служебное слово используется для описания структуры «объект»?

8.  Поясните понятие «инкапсуляция».

9.  Поясните понятие «наследование».

10.  Поясните понятие «полиморфизм».

11.  Поясните понятие «раннее связывание».

12.  Поясните понятие «позднее связывание».

13.  Как сделать метод виртуальным?

14.  Поясните понятие «конструктор» в применении к объектам.

15.  Поясните понятие «деструктор» в применении к объектам.

16.  Поясните понятие «скрытые поля и методы».

Литература

1.  Гэннон Дж. Принципы разработки программного обеспечения. Пер. с англ. М.: Мир, 1982 – 368 с., ил.

2.  О. Профессиональное программирование. Системный подход. – 2-е изд. перераб. и доп. – СПб.: БХВ-Петербург, 2004. – 624 с.: ил.

3.  Г. Программирование и основы алгоритмизации: Учеб. Пособие. – М.: Высш. шк., 2003. – 447 с.: ил.

4.  Искусство программирования для ЭВМ. т.1. Основные алгоритмы. – М.: Мир, 1975. – 736 с., ил.

5.  С., В., В. и др. Основы информатики и информационных технологий. Часть 1. Основы информатики. Пособие для поступающих в вуз. Под общ. ред. к. т.н., доцента В. С. Белова, — СПб/Псков, Изд-во СПбГПУ, 2004 — 160 с.

6.  Единая система программной документации. ГОСТ 19.701-90. Схемы алгоритмов, программ, данных и систем. Условные обозначения и правила выполнения.

7.  Единая система программной документации. ГОСТ 19.002-80. Схемы алгоритмов и программ. Правила выполнения.

8.  Единая система программной документации. ГОСТ 19.003-80. Схемы алгоритмов и программ. Обозначения условные графические.

9.  Турбо Паскаль 7.0. Самоучитель. – СПб.: Питер; К.: Издательская группа BHV, 2002. – 416 с.: ил.

10.  А. TURBO PASCAL – СПб, 2000.

11.  В. Турбо Паскаль 7.0. Начальный курс. Учебное пособие. – М.: «Нолидж», 1999. – 616 с., ил.

12.  Алгоритмы и программы на Turbo Pascal. Учеб. Курс. – СПб.: Питер, 2001.

13.  А. Язык программирования Turbo Pascal 6.0, 7.0. – М.: Веста, Радио и связь, 1993.

14.  М. PASCAL 7.0: Практическое программирование. Решение типовых задач.: Учебное пособие. – М.,: 2000.

Полетаев Игорь Алексеевич

Полетаев Дмитрий Игоревич

Полетаева Ольга Александровна

Программирование на языке высокого уровня Паскаль

Учебное пособие

Для студентов технических специальностей всех форм обучения

Технический редактор: А.

Компьютерная верстка:

Напечатано с готового оригинал-макета,

предоставленного авторами

________________________________________________________________

Подписано в печать _______________ Формат 60х90/16.

Гарнитура «Bookman Old Style». Усл. печ. л. 9,5

Тираж ________ экз. Заказ № ______

Адрес издательства:

Россия, 180000, Псков,

Издательство ППИ

Из за большого объема этот материал размещен на нескольких страницах:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24

Основные порталы (построено редакторами)

Домашний очаг

ДомДачаСадоводствоДетиАктивность ребенкаИгрыКрасотаЖенщины(Беременность)СемьяХобби
Здоровье: • АнатомияБолезниВредные привычкиДиагностикаНародная медицинаПервая помощьПитаниеФармацевтика
История: СССРИстория РоссииРоссийская Империя
Окружающий мир: Животный мирДомашние животныеНасекомыеРастенияПриродаКатаклизмыКосмосКлиматСтихийные бедствия

Справочная информация

ДокументыЗаконыИзвещенияУтверждения документовДоговораЗапросы предложенийТехнические заданияПланы развитияДокументоведениеАналитикаМероприятияКонкурсыИтогиАдминистрации городовПриказыКонтрактыВыполнение работПротоколы рассмотрения заявокАукционыПроектыПротоколыБюджетные организации
МуниципалитетыРайоныОбразованияПрограммы
Отчеты: • по упоминаниямДокументная базаЦенные бумаги
Положения: • Финансовые документы
Постановления: • Рубрикатор по темамФинансыгорода Российской Федерациирегионыпо точным датам
Регламенты
Термины: • Научная терминологияФинансоваяЭкономическая
Время: • Даты2015 год2016 год
Документы в финансовой сферев инвестиционнойФинансовые документы - программы

Техника

АвиацияАвтоВычислительная техникаОборудование(Электрооборудование)РадиоТехнологии(Аудио-видео)(Компьютеры)

Общество

БезопасностьГражданские права и свободыИскусство(Музыка)Культура(Этика)Мировые именаПолитика(Геополитика)(Идеологические конфликты)ВластьЗаговоры и переворотыГражданская позицияМиграцияРелигии и верования(Конфессии)ХристианствоМифологияРазвлеченияМасс МедиаСпорт (Боевые искусства)ТранспортТуризм
Войны и конфликты: АрмияВоенная техникаЗвания и награды

Образование и наука

Наука: Контрольные работыНаучно-технический прогрессПедагогикаРабочие программыФакультетыМетодические рекомендацииШколаПрофессиональное образованиеМотивация учащихся
Предметы: БиологияГеографияГеологияИсторияЛитератураЛитературные жанрыЛитературные героиМатематикаМедицинаМузыкаПравоЖилищное правоЗемельное правоУголовное правоКодексыПсихология (Логика) • Русский языкСоциологияФизикаФилологияФилософияХимияЮриспруденция

Мир

Регионы: АзияАмерикаАфрикаЕвропаПрибалтикаЕвропейская политикаОкеанияГорода мира
Россия: • МоскваКавказ
Регионы РоссииПрограммы регионовЭкономика

Бизнес и финансы

Бизнес: • БанкиБогатство и благосостояниеКоррупция(Преступность)МаркетингМенеджментИнвестицииЦенные бумаги: • УправлениеОткрытые акционерные обществаПроектыДокументыЦенные бумаги - контрольЦенные бумаги - оценкиОблигацииДолгиВалютаНедвижимость(Аренда)ПрофессииРаботаТорговляУслугиФинансыСтрахованиеБюджетФинансовые услугиКредитыКомпанииГосударственные предприятияЭкономикаМакроэкономикаМикроэкономикаНалогиАудит
Промышленность: • МеталлургияНефтьСельское хозяйствоЭнергетика
СтроительствоАрхитектураИнтерьерПолы и перекрытияПроцесс строительстваСтроительные материалыТеплоизоляцияЭкстерьерОрганизация и управление производством