Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

Standard Object Semantic Compatibility





Class Date Class SetDate method setDate(day: Integer; callmethod writeDate(day: Integer; month: Integer; month: Integer;

year: Integer); year: Integer); method getDate(); callmethod readDate();

EndClass EndClass The methods tagged with the callmethod keyword are part of the REQUIRES of the class; those tagged with the method keyword are part of the PROVIDES part. These classes are not type compatible since their outbound and inbound interfaces are of two different types (DateType and some new type; lets call it AnotherDateType). If the only difference between the methods setDate and writeDate is exactly their syntax, then these classes are semantically compatible.

This mapping exists because both of these classes realize the same kind, that of DATE. We know this fact because at some point a developer defined this ontology by virtue of a claim or a belief on the classes.

Such a truth structure could have been defined explicitly through the specification of a semantic property (realizes) on the classes, via manipulation in the development environment, or by direct input with the kind

system. Now, because Date: DATE, then a mapping exists from each of its parts (e.g., the setDate method) to each of the parts of the kind (the canonical SETDATE kind feature). These maps, when used in composition, define a simple renaming (sort of an alpha-renaming for instances)

for the classes. We can realize such a renaming either by directly manipulating the source text (if this is permissible in the current context), or by generating a simple wrapper class automatically. Thus, an adapter which maps calls from writeDate to setDate and from readDate to getDate will allow

the composition of these two classes to perform correctly.







Дата добавления: 2015-09-07; просмотров: 610. Нарушение авторских прав; Мы поможем в написании вашей работы!




Расчетные и графические задания Равновесный объем - это объем, определяемый равенством спроса и предложения...


Кардиналистский и ординалистский подходы Кардиналистский (количественный подход) к анализу полезности основан на представлении о возможности измерения различных благ в условных единицах полезности...


Обзор компонентов Multisim Компоненты – это основа любой схемы, это все элементы, из которых она состоит. Multisim оперирует с двумя категориями...


Композиция из абстрактных геометрических фигур Данная композиция состоит из линий, штриховки, абстрактных геометрических форм...

Ваготомия. Дренирующие операции Ваготомия – денервация зон желудка, секретирующих соляную кислоту, путем пересечения блуждающих нервов или их ветвей...

Билиодигестивные анастомозы Показания для наложения билиодигестивных анастомозов: 1. нарушения проходимости терминального отдела холедоха при доброкачественной патологии (стенозы и стриктуры холедоха) 2. опухоли большого дуоденального сосочка...

Сосудистый шов (ручной Карреля, механический шов). Операции при ранениях крупных сосудов 1912 г., Каррель – впервые предложил методику сосудистого шва. Сосудистый шов применяется для восстановления магистрального кровотока при лечении...

Факторы, влияющие на степень электролитической диссоциации Степень диссоциации зависит от природы электролита и растворителя, концентрации раствора, температуры, присутствия одноименного иона и других факторов...

Йодометрия. Характеристика метода Метод йодометрии основан на ОВ-реакциях, связанных с превращением I2 в ионы I- и обратно...

Броматометрия и бромометрия Броматометрический метод основан на окислении вос­становителей броматом калия в кислой среде...

Studopedia.info - Студопедия - 2014-2026 год . (0.01 сек.) русская версия | украинская версия