Полекнопка: окно_с_текстом

      Комментарии к записи Полекнопка: окно_с_текстом отключены

методИнициализировать (

aX1,aY1,aX2,aY2,aColor,aXt,aYt,aText,

bX1,bY1,bX2,bY2,bColor,bXt,bYt,bText)

методИзобразить

Конец описания.

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

Рис. 16.Структура полей класса Сообщение

Метод Изобразить должен выводить на экран оба окна: одно — используя родительский метод, второе — используя метод поля-объекта.

Доступ к компонентам объектного поля осуществляется с указанием имени объекта, имени поля, имени компонента:

.. или

Возможно, произвольное количество вложений объектных полей.

Наполнение

Включение объектов в некоторый класс можно реализовать и с использованием указателей на эти объекты. В отличие от объектного поля, которое включает в класс точно указанное количество объектов (1 или более – при использовании массива объектов) конкретного класса, использование указателей позволяет включить 0 или более объектов, если они собраны в массив или списковую (линейную или нелинейную) структуру.

Пример Наполнения(класс Функция)

В качестве примера рассмотрим класс, объекты которого должны осуществлять разбор заданного алгебраического выражения (выражение представляет собой запись функции от одной переменной — x). Данный объект должен обрабатывать сообщения:

1. «Конструировать» — в процессе конструирования должно строиться бинарное дерево вычисления выражения (рис. 17), переданного в списке параметров.

Рис. 17.Дерево вычисления выражения

2. «Вычислить» — при обработке этого сообщения должно вычисляться значение функции по заданному значению аргумента.

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

Класс Триада:

Поле-адресЛевое_поддерево: Триада

Поле-адрес Правое_Поддерево:Триада

полеОперация

полеРезультат

методИнициализировать (выражение)

Конец описания.

При описании класса Функция мы также используем поле-адрес:

Класс Функция:

полe-адрес Корень_дерева: ТРИАДА;

методКонструировать (выражение);

методВычислить;

Конец описания.

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

Статьи к прочтению:

Тест Драйв BMW 328i F30. Лучший в своем классе. Triada Drive


Похожие статьи:

  • Построение двух графиков в рамках одного окна

    Приведем пример скрипта для построения двух графиков в рамках одного окна в MATLAB: % скрипт, строящий два графика в рамках одного окна %координаты точек…

  • Окно папки. структура окна.

    Основные объекты и приемы управления Windows ОС Windows ХР. Основные объекты и приемы управления Windows Windows ХР. является графической операционной…