русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

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

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Создание и использование объектов


Дата добавления: 2015-07-09; просмотров: 1358; Нарушение авторских прав


Первый шаг при создании объектов – объявление одной или нескольких объектных переменных. Аналогично обычным переменным объектные переменные можно создавать либо статически, либо динамически. Оба способа создания переменных реализованы только в С++. В остальных языках используется только динамическое создание объектов. Объекты адресуются своими указателями, хотя явно этого не видно, т.к. разрешено только сравнивать указатели на равенство и присваивать указателям допустимые значения.

Рассмотрим сначала объявление и создание объектов в С++.

Для статического создания объекта достаточно объявить одну или несколько переменных соответствующего классового типа:

Circle Circ1, Circ2;

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

Circle Circ3 (50, 50, 20);

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

Circ1.Show ( ); // отобразить объект Circ1

Circ3.MoveTo (100, 100); // переместить объект Circ3

int r = Circ3.GetR ( ); // запросить радиус объекта Circ3

Для динамического создания объектов, прежде всего, необходимо объявить ссылочную переменную:

Circle *pCirc1;

При обработке этой строки компилятор выделяет память только для хранения адреса будущего объекта. После этого записывается строка для динамического создания объекта, причем для выделения памяти используется стандартная функция new, a для инициализации выделенной области явно вызывается один из конструкторов класса:



pCirc1 = new Circle ( );

При необходимости объявление объектной переменной и вызов конструктора можно объединить в одной строке:

Circle *pCirc1 = new Circle ( );

Вызов методов динамических объектов выполняется следующим образом:

pCircle -> Show ( ); // отобразить

pCircle -> MoveTo (200, 200); // переместить

int Rad = pCirc2 -> GetRad ( ); // получить радиус

 

В языках Java и C# предусмотрено только динамическое создание объектов. Объекты неявно адресуются своими указателями. Объявление объектной переменной и создание объекта может быть либо разделено

Circle Circ1;

Circ1 = new Circle ( );

либо объединено в одну строку:

Circle Circ2 = new Circle (100, 100, 50);

После создания объекта можно вызывать его методы:

Circ2.Show ( );

Circ2.MoveTo (200, 200);

Rad = Circ2.GetRad ( );

 

В языке Delphi Pascal объекты также можно создавать только динамически и адресовать своими указателями:

var Circ1 : TCircle; // объявление объекта-окружности

Circs : array [1..100] of TCircle; // объявление массива

// объектных указателей

Для создания объекта необходимо указать имя класса и вызвать один из реализованных конструкторов:

Circ1 := TCircle.Create;

for i := 1 to 100 do Circs[i] := TCircle.Create (параметры);

Обращение к методам выполняется следующим образом:

Circ1.Show;

Circ1.MoveTo (200, 200);

for i := 1 to 100 do Circs[i].Show;

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

 



<== предыдущая лекция | следующая лекция ==>
Delphi Pascal (DP) | Практические задания


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.004 сек.