Студопедия

Главная страница Случайная страница

Разделы сайта

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






Отношения между классами






Большинство ОО языков поддерживают большую часть из указанных ниже отношений между классами:

1. Ассоциация

2. Наследование

3. Агрегация

4. Использование

5. Инициализирование

6. Мета класс

1) Ассоциация – это простейшая связь между классами. Такая связь выделяется на этапе первого анализа и в дальнейшем скорей всего будет уточнена.

Class product;

Class Sale

Class Product{

Public: //

Protected:

Safe*last sale; };

Class sale{

/…

Protected:

Product product Sale; }}

 

Ассоциации характеризуется мощностью связи в данном случае 1 к N; ещё может быть 1к1 и NкN. Мощность определяет количество участников в связи.

2) Наследование

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

Выделяют одиночное и множественное наследование. В одиночном наследовании в качестве предка может выступать строго один класс иерархии наследований дерево(smalltalk, Paskal, Delphi, C# и т.д.)

 

В большинстве языков новый пользовательский класс вызова имеют предка.

При одиночном наследовании всегда известно имя единственного предка и в языках программирования используется специальная служба слова к доступу к этому предку base…(C#, inherited Delphy)

3) Инстанцирование

C++ template< class Item>

Class Quene{ public

Quene();

Quene(const Quene< Item> &); //копир. Констр.

~Quene();

Void clear();

Void append(class Item&);

Void pop();

Void remove(int at);

Int length()const;

//}

Main(){

Тип параметр переменая

Quene< int> int Q;

Quene< Display Item*> Item Q;

Int Q.clear();

 

STL – библиотека стандартных шаблонов С++

 






© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.