ВУЗ:
Составители:
Рубрика:
11
ночное наследование) или других (множественное наследование)
классов. Класс, структура и поведение которого наследуются, на-
зывается суперклассом. Производный от суперкласса класс называ-
ется подклассом. Это означает, что наследование устанавливает
между классами иерархию общего и частного. Подкласс обычно рас-
ширяет или ограничивает существующую структуру и поведение сво-
его суперкласса.
Связи наследования также называют обобщениями
(generalization) и изображают в виде больших белых стрелок от
класса-потомка к классу-предку.
Помимо наследуемых, каждый подкласс имеет свои собственные
уникальные атрибуты, операции и связи.
Лучше всего строить иерархию классов, в которой от общих классов
с помощью наследования образуются более специализированные.
employee
grade : int
department : string
<<virtual>> show() : void
employee(n : string, g : char, d : string)
student
group : string
year : int
<<virtual>> show() : void
student(n : string, g : string, y : char)
contract_student
contract_number : string
<<virtual>> show() : void
contract_student(n : string, g : string, y : char, cn : string)
person
name : string
< < virt ual > > s how() : voi d
person(n : string)
рис. 2. Отношение наследования
Агрегация. В то время как связи обозначают равноправные или
«клиент-серверные» отношения между объектами, агрегация описыва-
ет отношения целого и части, приводящие к соответствующей иерар-
хии объектов, причем, идя от целого (агрегата) мы можем придти к
его частям (атрибутам). В этом смысле агрегация – специализиро-
ванный частный случай ассоциации. Объект, являющийся атрибутом
другого объекта (агрегата), имеет связь со своим агрегатом. Че-
рез эту связь агрегат может посылать ему сообщения.
Агрегации отображают в виде линии с ромбиком у класса, яв-
ляющегося целым:
11 ночное наследование) или других (множественное наследование) классов. Класс, структура и поведение которого наследуются, на- зывается суперклассом. Производный от суперкласса класс называ- ется подклассом. Это означает, что наследование устанавливает между классами иерархию общего и частного. Подкласс обычно рас- ширяет или ограничивает существующую структуру и поведение сво- его суперкласса. Связи наследования также называют обобщениями (generalization) и изображают в виде больших белых стрелок от класса-потомка к классу-предку. Помимо наследуемых, каждый подкласс имеет свои собственные уникальные атрибуты, операции и связи. Лучше всего строить иерархию классов, в которой от общих классов с помощью наследования образуются более специализированные. person name : string <> show() : void person(n : string) employee student grade : int group : string department : string year : int < > show() : void < > show() : void employee(n : string, g : char, d : string) student(n : string, g : string, y : char) contract_student contract_number : string < > show() : void contract_student(n : string, g : string, y : char, cn : string) рис. 2. Отношение наследования Агрегация. В то время как связи обозначают равноправные или «клиент-серверные» отношения между объектами, агрегация описыва- ет отношения целого и части, приводящие к соответствующей иерар- хии объектов, причем, идя от целого (агрегата) мы можем придти к его частям (атрибутам). В этом смысле агрегация – специализиро- ванный частный случай ассоциации. Объект, являющийся атрибутом другого объекта (агрегата), имеет связь со своим агрегатом. Че- рез эту связь агрегат может посылать ему сообщения. Агрегации отображают в виде линии с ромбиком у класса, яв- ляющегося целым:
Страницы
- « первая
- ‹ предыдущая
- …
- 9
- 10
- 11
- 12
- 13
- …
- следующая ›
- последняя »