Алгоритмические языки и программирование. Викентьева О.Л - 11 стр.

UptoLike

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. Отношение наследования



     Агрегация. В то время как связи обозначают равноправные или
«клиент-серверные» отношения между объектами, агрегация описыва-
ет отношения целого и части, приводящие к соответствующей иерар-
хии объектов, причем, идя от целого (агрегата) мы можем придти к
его частям (атрибутам). В этом смысле агрегация – специализиро-
ванный частный случай ассоциации. Объект, являющийся атрибутом
другого объекта (агрегата), имеет связь со своим агрегатом. Че-
рез эту связь агрегат может посылать ему сообщения.
     Агрегации отображают в виде линии с ромбиком у класса, яв-
ляющегося целым: