Π”ΠΈΠΏΠ»ΠΎΠΌ, курсовая, ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Π°Ρ Ρ€Π°Π±ΠΎΡ‚Π°
ΠŸΠΎΠΌΠΎΡ‰ΡŒ Π² написании студСнчСских Ρ€Π°Π±ΠΎΡ‚

Π”ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠ° классов. 
ΠžΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅

Π Π΅Ρ„Π΅Ρ€Π°Ρ‚ΠŸΠΎΠΌΠΎΡ‰ΡŒ Π² Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΠΈΠ£Π·Π½Π°Ρ‚ΡŒ ΡΡ‚ΠΎΠΈΠΌΠΎΡΡ‚ΡŒΠΌΠΎΠ΅ΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹

Π—Π½Π°Ρ‡ΠΎΠΊ обобщСния (наслСдования) Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ Π±ΠΎΠ»ΡŒΡˆΡƒΡŽ Π½Π΅Π·Π°ΠΊΡ€Π°ΡˆΠ΅Π½Π½ΡƒΡŽ стрСлку, которая ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ ΠΎΡ‚ ΠΏΠΎΠ΄ΠΊΠ»Π°ΡΡΠ° ΠΊ ΡΡƒΠΏΠ΅Ρ€ΠΊΠ»Π°ΡΡΡƒ (рис. 6.8). ΠœΠ΅ΡΡ‚ΠΎ классов Π² Π½Π°ΡΠ»Π΅Π΄ΡΡ‚Π²Π΅Π½Π½ΠΎΠΉ ΠΈΠ΅Ρ€Π°Ρ€Ρ…ΠΈΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΡƒΡ‚ΠΎΡ‡Π½ΠΈΡ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ. ИмСна абстрактных классов ΡƒΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‚ΡΡ курсивом. К ΠΈΠΌΠ΅Π½ΠΈ Π±Π°Π·ΠΎΠ²ΠΎΠ³ΠΎ класса добавляСтся свойство root, Π° ΠΊ ΠΈΠΌΠ΅Π½ΠΈ листового класса — свойство leaf. Аналогично, ΠΈΠΌΠ΅Π½Π° чисто Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹Ρ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ-Ρ‡Π»Π΅Π½ΠΎΠ²… Π§ΠΈΡ‚Π°Ρ‚ΡŒ Π΅Ρ‰Ρ‘ >

Π”ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠ° классов. ΠžΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ (Ρ€Π΅Ρ„Π΅Ρ€Π°Ρ‚, курсовая, Π΄ΠΈΠΏΠ»ΠΎΠΌ, ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Π°Ρ)

ΠžΡΠ½ΠΎΠ²Π½Ρ‹ΠΌΠΈ элСмСнтами, ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π΅ΠΌΡ‹ΠΌΠΈ Π½Π° Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠ΅ классов, ΡΠ²Π»ΡΡŽΡ‚ΡΡ классы, интСрфСйсы ΠΈ ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡ ΠΌΠ΅ΠΆΠ΄Ρƒ Π½ΠΈΠΌΠΈ.

ГрафичСскоС ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ класса прСдставлСно Π½Π° Ρ€ΠΈΡ. 6.1.

ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ класс Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΈΠΌΠ΅Ρ‚ΡŒ имя. На Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π·Π½Π°Ρ‡ΠΊΠ°Ρ… классов ΠΏΠΎΠ»Π΅Π·Π½ΠΎ ΠΏΠ΅Ρ€Π΅Ρ‡ΠΈΡΠ»ΡΡ‚ΡŒ нСсколько Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ΠΎΠ² ΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ класса. «ΠΠ° Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ…», ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ для Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π° Ρ‚Ρ€ΠΈΠ²ΠΈΠ°Π»ΡŒΠ½Ρ‹Ρ… классов это Π½Π΅ Π½ΡƒΠΆΠ½ΠΎ. Если ΠΌΡ‹ Π½Π΅ Ρ…ΠΎΡ‚ΠΈΠΌ Π²ΠΈΠ΄Π΅Ρ‚ΡŒ Π½Π° Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠ΅ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Ρ‹ ΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ класса, ΠΌΡ‹ ΡƒΠ΄Π°Π»ΡΠ΅ΠΌ Ρ€Π°Π·Π΄Π΅Π»ΡΡŽΡ‰ΠΈΠ΅ Ρ‡Π΅Ρ€Ρ‚Ρ‹ ΠΈ ΠΏΠΈΡˆΠ΅ΠΌ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ имя класса.

Π—Π½Π°Ρ‡ΠΎΠΊ.

Рис. 6.1. Π—Π½Π°Ρ‡ΠΎΠΊ

Рис. 6.2. БтатичСскиС

Π£Ρ‚ΠΈΠ»ΠΈΡ‚Π°.
Рис. 6.3. Π£Ρ‚ΠΈΠ»ΠΈΡ‚Π°.

Рис. 6.3. Π£Ρ‚ΠΈΠ»ΠΈΡ‚Π°

Атрибут ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΠ±ΠΎΠ·Π½Π°Ρ‡Π°Ρ‚ΡŒΡΡ ΠΈΠΌΠ΅Π½Π΅ΠΌ, Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ ΡƒΠΊΠ°Π·Π°Π½Ρ‹ Ρ‚ΠΈΠΏ (класс), Π²ΠΈΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ, ΠΊΡ€Π°Ρ‚Π½ΠΎΡΡ‚ΡŒ ΠΈ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Π² ΡΠΎΠΎΡ‚вСтствии со ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ синтаксисом:

Π²ΠΈΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ имя [ΠΊΡ€Π°Ρ‚Π½ΠΎΡΡ‚ΡŒ]: Ρ‚ΠΈΠΏ = Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅_ΠΏΠΎ_ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ.

Π’ΠΈΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ обозначаСтся ΠΏΡƒΡ‚Π΅ΠΌ добавлСния Π² ΠΊΠ°Ρ‡Π΅ΡΡ‚Π²Π΅ прСфикса ΠΊ ΠΈΠΌΠ΅Π½ΠΈ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… символов: ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΉ (+), Π·Π°Ρ‰ΠΈΡ‰Π΅Π½Π½Ρ‹ΠΉ (#), Π·Π°ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΉ (-).

ΠšΡ€Π°Ρ‚Π½ΠΎΡΡ‚ΡŒ (количСство элСмСнтов ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠ³ΠΎ Ρ‚ΠΈΠΏΠ°, ΡΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‰ΠΈΡ… Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚) показываСтся Π² Π²ΠΈΠ΄Π΅ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ Ρ€Π°Π·Π΄Π΅Π»Π΅Π½Π½Ρ‹Ρ… запятой спСцификаций ΠΈΠ½Ρ‚Π΅Ρ€Π²Π°Π»ΠΎΠ² Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅: ниТняя Π³Ρ€Π°Π½ΠΈΡ†Π°. вСрхняя Π³Ρ€Π°Π½ΠΈΡ†Π° ΠΈ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹Ρ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ. Для обозначСния Π½Π΅ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½Π½ΠΎΠ³ΠΎ количСства ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ символ *. НапримСр:

  • 1 Π’ точности ΠΎΠ΄ΠΈΠ½;
  • *ноль ΠΈΠ»ΠΈ большС;
  • 0. * ноль ΠΈΠ»ΠΈ большС;
  • 1. * ΠΎΠ΄ΠΈΠ½ ΠΈΠ»ΠΈ большС;
  • 3. 7ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹ΠΉ ΠΈΠ½Ρ‚Π΅Ρ€Π²Π°Π»;
  • 1. 3, 7ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹ΠΉ ΠΈΠ½Ρ‚Π΅Ρ€Π²Π°Π» ΠΈΠ»ΠΈ Ρ‚ΠΎΡ‡Π½ΠΎΠ΅ число.

ΠŸΡ€ΠΈΠ²Π΅Π΄Π΅ΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ описания Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ΠΎΠ²:

ΠΡ‚ΠΎΠ»ΡŒΠΊΠΎ имя;

+А: Π‘Π²ΠΈΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ, имя ΠΈ Ρ‚ΠΈΠΏ;

А[10]: Бимя, ΠΊΡ€Π°Ρ‚Π½ΠΎΡΡ‚ΡŒ ΠΈ Ρ‚ΠΈΠΏ;

А: Π‘ = Еимя, Ρ‚ΠΈΠΏ ΠΈ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ.

ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ°ΡŽΡ‚ΡΡ Π²Π½ΡƒΡ‚Ρ€ΠΈ Π·Π½Π°Ρ‡ΠΊΠ° класса Ρ‚ΠΎΠ»ΡŒΠΊΠΎ своим ΠΈΠΌΠ΅Π½Π΅ΠΌ. Π’ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Ρ‚Π°ΠΊΠΆΠ΅ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Ρ‚ΡŒ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ элСмСнты Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅: Π²ΠΈΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ имя (Ρ„ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½Ρ‹Π΅_ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹): Ρ‚ΠΈΠΏ_Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌΠΎΠ³ΠΎ_значСния.

Π€ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½Ρ‹Π΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ Π·Π°ΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‚ΡΡ Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅:

Π²ΠΈΠ΄ имя: Ρ‚ΠΈΠΏ = Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅_ΠΏΠΎ_ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ, Π³Π΄Π΅ Π²ΠΈΠ΄ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅Ρ‚ ΠΎΠ΄Π½ΠΎ ΠΈΠ· ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ:

in — Π²Ρ…ΠΎΠ΄Π½ΠΎΠΉ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ (Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ);

out — Π²Ρ‹Ρ…ΠΎΠ΄Π½ΠΎΠΉ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€;

inout — ΡΠΌΠ΅ΡˆΠ°Π½Π½Ρ‹ΠΉ, Ρ‚. Π΅. ΠΈ Π²Ρ…ΠΎΠ΄Π½ΠΎΠΉ, ΠΈ Π²Ρ‹Ρ…ΠΎΠ΄Π½ΠΎΠΉ.

Если ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ ΠΏΠΎΠΌΠ΅Ρ‡Π΅Π½ ΠΊΠ°ΠΊ Π²Ρ…ΠΎΠ΄Π½ΠΎΠΉ, Ρ‚ΠΎ Ρ„ункция Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒ Π΅Π³ΠΎ значСния, Π½ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ Π΅Π³ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ (ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Π° ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² ΠΏΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΡŽ); Ссли ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ ΠΏΠΎΠΌΠ΅Ρ‡Π΅Π½ ΠΊΠ°ΠΊ Π²Ρ‹Ρ…ΠΎΠ΄Π½ΠΎΠΉ, Ρ‚ΠΎ Ρ„ункция Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π΅Π³ΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, Π½ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€ΠΈΡΠ²ΠΎΠΈΡ‚ΡŒ Π΅ΠΌΡƒ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅; Π½Π°ΠΊΠΎΠ½Π΅Ρ†, Ссли ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ ΠΏΠΎΠΌΠ΅Ρ‡Π΅Π½ ΠΊΠ°ΠΊ ΡΠΌΠ΅ΡˆΠ°Π½Π½Ρ‹ΠΉ, Ρ‚ΠΎ Ρ„ункция ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈ Ρ‡ΠΈΡ‚Π°Ρ‚ΡŒ Π΅Π³ΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, ΠΈ ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒ (ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Π° ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² ΠΏΠΎ ΡΡΡ‹Π»ΠΊΠ΅).

ΠŸΡ€ΠΈΠ²Π΅Π΄Π΅ΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ описания ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ:

display () — Ρ‚ΠΎΠ»ΡŒΠΊΠΎ имя;

display (): bool — имя ΠΈ Ρ‚ΠΈΠΏ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌΠΎΠ³ΠΎ значСния;

+set (n: Name, s: String) — Π²ΠΈΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ, имя ΠΈ Ρ„ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½Ρ‹Π΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹.

Атрибуты ΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ класса (статичСскиС Ρ‡Π»Π΅Π½Ρ‹) ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ°ΡŽΡ‚ΡΡ ΠΏΠΎΠ΄Ρ‡Π΅Ρ€ΠΊΠ½ΡƒΡ‚Ρ‹ΠΌΠΈ. ΠŸΡ€ΠΈΠΌΠ΅Ρ€ Π½Π° Ρ€ΠΈΡ. 6.2 ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ класса Data (см. ΠΏ. 4.6).

Π£Ρ‚ΠΈΠ»ΠΈΡ‚Π° изобраТаСтся ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹ΠΌ Π·Π½Π°Ρ‡ΠΊΠΎΠΌ класса со ΡΡ‚Π΅Ρ€Π΅ΠΎΡ‚ΠΈΠΏΠΎΠΌ «utility» (рис. 6.3). Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΊ ΡΡ‚Π°Π½Π΄Π°Ρ€Ρ‚Π½ΠΎΠΌΡƒ элСмСнту языка стСрСотипа позволяСт ΠΏΡ€ΠΈΡΠΏΠΎΡΠΎΠ±ΠΈΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹ΠΉ элСмСнта для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠΉ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹.

Π˜Π½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡ Π½Π° Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠ΅ классов ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ·ΠΎΠ±Ρ€Π°Π·ΠΈΡ‚ΡŒ двумя способами: Ρ€Π°Π·Π²Π΅Ρ€Π½ΡƒΡ‚Ρ‹ΠΌ ΠΈ ΡΠΎΠΊΡ€Π°Ρ‰Π΅Π½Π½Ρ‹ΠΌ. Π’ ΡΠ»ΡƒΡ‡Π°Π΅ Ρ€Π°Π·Π²Π΅Ρ€Π½ΡƒΡ‚ΠΎΠ³ΠΎ способа интСрфСйс изобраТаСтся Π½Π° Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠ΅ ΠΊΠ°ΠΊ класс со ΡΡ‚Π΅Ρ€Π΅ΠΎΡ‚ΠΈΠΏΠΎΠΌ «interface» ΠΈ Π±Π΅Π· сСкции Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ΠΎΠ² (рис. 6.4). Π‘ΠΎΠΊΡ€Π°Ρ‰Π΅Π½Π½ΠΎΠ΅ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ интСрфСйса прСдставляСт нСбольшой ΠΊΡ€ΡƒΠΆΠΎΠΊ с ΠΈΠΌΠ΅Π½Π΅ΠΌ интСрфСйса Π²ΠΎΠ·Π»Π΅ Π½Π΅Π³ΠΎ (рис. 6.5).

Π‘ΠΎΠΊΡ€Π°Ρ‰Π΅Π½Π½ΠΎΠ΅ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ интСрфСйса.

Рис. 6.5. Π‘ΠΎΠΊΡ€Π°Ρ‰Π΅Π½Π½ΠΎΠ΅ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ интСрфСйса

ΠšΠ»Π°ΡΡΡ‹ Ρ€Π΅Π΄ΠΊΠΎ Π±Ρ‹Π²Π°ΡŽΡ‚ ΠΈΠ·ΠΎΠ»ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΌΠΈ; ΠΎΠ½ΠΈ Π²ΡΡ‚ΡƒΠΏΠ°ΡŽΡ‚ Π² ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡ Π΄Ρ€ΡƒΠ³ с Π΄Ρ€ΡƒΠ³ΠΎΠΌ.

Π—Π½Π°Ρ‡ΠΎΠΊ ассоциации изобраТаСтся Π² Π²ΠΈΠ΄Π΅ Π»ΠΈΠ½ΠΈΠΈ, ΡΠΎΠ΅Π΄ΠΈΠ½ΡΡŽΡ‰Π΅ΠΉ Π΄Π²Π° класса (рис. 6.6). ΠŸΡ€ΠΈ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΈ ассоциации Π΅ΠΉ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠΏΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Ρ‚Π΅ΠΊΡΡ‚ΠΎΠ²ΡƒΡŽ ΠΏΠΎΠΌΠ΅Ρ‚ΠΊΡƒ, Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΈΡ€ΡƒΡŽΡ‰ΡƒΡŽ имя этой связи ΠΈΠ»ΠΈ ΠΏΠΎΠ΄ΡΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‰ΡƒΡŽ Π΅Π΅ Ρ€ΠΎΠ»ΡŒ. Ассоциации часто ΠΎΡ‚ΠΌΠ΅Ρ‡Π°ΡŽΡ‚ΡΡ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌΠΈ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ «ΠœΠ΅ΡΡ‚ΠΎ Ρ€Π°Π±ΠΎΡ‚Ρ‹», ΠΎΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‰ΠΈΠΌΠΈ ΠΏΡ€ΠΈΡ€ΠΎΠ΄Ρƒ связи. К Π·Π½Π°Ρ‡ΠΊΡƒ Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Ρ€ΠΎΠ»ΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ классы ΠΈΠ³Ρ€Π°ΡŽΡ‚ Π² Π°ΡΡΠΎΡ†ΠΈΠ°Ρ†ΠΈΠΈ. Одна ΠΏΠ°Ρ€Π° классов ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ Π±ΠΎΠ»Π΅Π΅ ΠΎΠ΄Π½ΠΎΠΉ ассоциативной связи. Π’ΠΎΠ·Π»Π΅ Π·Π½Π°Ρ‡ΠΊΠ° ассоциации ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ Π΅Π΅ ΠΊΡ€Π°Ρ‚Π½ΠΎΡΡ‚ΡŒ.

Ассоциация.

Рис. 6.6. Ассоциация

Π—Π°Π²ΠΈΡΠΈΠΌΠΎΡΡ‚ΡŒ.

Рис. 6.7. Π—Π°Π²ΠΈΡΠΈΠΌΠΎΡΡ‚ΡŒ

Указывая ΠΊΡ€Π°Ρ‚Π½ΠΎΡΡ‚ΡŒ Π½Π° ΠΎΠ΄Π½ΠΎΠΌ ΠΊΠΎΠ½Ρ†Π΅, ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‚, Ρ‡Ρ‚ΠΎ Π½Π° ΡΡ‚ΠΎΠΌ ΠΊΠΎΠ½Ρ†Π΅ ΠΈΠΌΠ΅Π½Π½ΠΎ ΡΡ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠ°ΠΆΠ΄ΠΎΠΌΡƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρƒ Π½Π° Π΄Ρ€ΡƒΠ³ΠΎΠΌ ΠΊΠΎΠ½Ρ†Π΅. Если ΠΊΡ€Π°Ρ‚Π½ΠΎΡΡ‚ΡŒ явно Π½Π΅ ΡƒΠΊΠ°Π·Π°Π½Π°, Ρ‚ΠΎ ΠΏΠΎΠ΄Ρ€Π°Π·ΡƒΠΌΠ΅Π²Π°Π΅Ρ‚ся, Ρ‡Ρ‚ΠΎ ΠΎΠ½Π° Π½Π΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π°.

На Ρ€ΠΈΡ. 6.6 ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½Π° ассоциация «ΠšΠΎΠΌΠΏΠ°Π½ΠΈΡ» — «Π§Π΅Π»ΠΎΠ²Π΅ΠΊ», ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Π΄Π°Π½ΠΎ имя «ΠœΠ΅ΡΡ‚ΠΎ Ρ€Π°Π±ΠΎΡ‚Ρ‹». ΠšΠ»Π°ΡΡΡ‹, ΡƒΡ‡Π°ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ Π² Π½Π΅ΠΉ, ΠΈΠ³Ρ€Π°ΡŽΡ‚ Ρ€ΠΎΠ»ΠΈ «Π Π°Π±ΠΎΡ‚ΠΎΠ΄Π°Ρ‚Π΅Π»ΡŒ» ΠΈ «Π Π°Π±ΠΎΡ‚Π½ΠΈΠΊ» соотвСтствСнно.

ΠžΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠ΅ зависимости изобраТаСтся ΠΏΡƒΠ½ΠΊΡ‚ΠΈΡ€Π½ΠΎΠΉ Π»ΠΈΠ½ΠΈΠ΅ΠΉ со ΡΡ‚Ρ€Π΅Π»ΠΊΠΎΠΉ, Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½Π½ΠΎΠΉ ΠΎΡ‚ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° ΠΊ ΡΠ΅Ρ€Π²Π΅Ρ€Ρƒ (рис. 6.7). Π‘Ρ‚Π΅Ρ€Π΅ΠΎΡ‚ΠΈΠΏ «friend» Π½Π° Π»ΠΈΠ½ΠΈΠΈ зависимости ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ являСтся друТСствСнным классом для сСрвСра.

Π—Π½Π°Ρ‡ΠΎΠΊ обобщСния (наслСдования) Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ Π±ΠΎΠ»ΡŒΡˆΡƒΡŽ Π½Π΅Π·Π°ΠΊΡ€Π°ΡˆΠ΅Π½Π½ΡƒΡŽ стрСлку, которая ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ ΠΎΡ‚ ΠΏΠΎΠ΄ΠΊΠ»Π°ΡΡΠ° ΠΊ ΡΡƒΠΏΠ΅Ρ€ΠΊΠ»Π°ΡΡΡƒ (рис. 6.8). ΠœΠ΅ΡΡ‚ΠΎ классов Π² Π½Π°ΡΠ»Π΅Π΄ΡΡ‚Π²Π΅Π½Π½ΠΎΠΉ ΠΈΠ΅Ρ€Π°Ρ€Ρ…ΠΈΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΡƒΡ‚ΠΎΡ‡Π½ΠΈΡ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ. ИмСна абстрактных классов ΡƒΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‚ΡΡ курсивом. К ΠΈΠΌΠ΅Π½ΠΈ Π±Π°Π·ΠΎΠ²ΠΎΠ³ΠΎ класса добавляСтся свойство root, Π° ΠΊ ΠΈΠΌΠ΅Π½ΠΈ листового класса — свойство leaf. Аналогично, ΠΈΠΌΠ΅Π½Π° чисто Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹Ρ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ-Ρ‡Π»Π΅Π½ΠΎΠ² ΡƒΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‚ΡΡ курсивом, Π° ΠΊ ΠΈΠΌΠ΅Π½ΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ, которая Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠΉ, добавляСтся свойство leaf.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€. На Ρ€ΠΈΡ. 6.8 ΠΏΠΎΠΊΠ°Π·Π°Π½Π° наслСдствСнная иСрархия, связанная с Π³Π΅ΠΎΠΌΠ΅Ρ‚ричСскими Ρ„ΠΈΠ³ΡƒΡ€Π°ΠΌΠΈ (см. ΠΏ. 4.3.1). Абстрактный класс Shape ΠΎΡ‚ΠΌΠ΅Ρ‡Π΅Π½ ΠΊΠ°ΠΊ Π±Π°Π·ΠΎΠ²Ρ‹ΠΉ класс, ΠΈΠΌΠ΅ΡŽΡ‰ΠΈΠΉ чисто Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ draw, rotate ΠΈ Π»ΠΈΡΡ‚ΠΎΠ²ΡƒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ get_center. Ѐункция draw Π² ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π΅ класса Circle являСтся ΠΏΠΎΠ»ΠΈΠΌΠΎΡ€Ρ„Π½ΠΎΠΉ. Класс SolidCircle объявлСн ΠΊΠ°ΠΊ листовой.

Π—Π½Π°Ρ‡ΠΎΠΊ Π°Π³Ρ€Π΅Π³Π°Ρ†ΠΈΠΈ — линия с Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ Π½Π΅Π·Π°ΠΊΡ€Π°ΡˆΠ΅Π½Π½ΠΎΠ³ΠΎ Ρ€ΠΎΠΌΠ±Π° Π½Π° ΠΊΠΎΠ½Ρ†Π΅, ΠΎΠ±ΠΎΠ·Π½Π°Ρ‡Π°ΡŽΡ‰Π΅ΠΌ Π°Π³Ρ€Π΅Π³Π°Ρ‚ (рис. 6.9). ЭкзСмпляры класса Π½Π° Π΄Ρ€ΡƒΠ³ΠΎΠΌ ΠΊΠΎΠ½Ρ†Π΅ стрСлки Π±ΡƒΠ΄ΡƒΡ‚ частями экзСмпляров класса-Π°Π³Ρ€Π΅Π³Π°Ρ‚Π°. ΠžΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ обозначаСтся Π»ΠΈΠ½ΠΈΠ΅ΠΉ с Π·Π°ΠΊΡ€Π°ΡˆΠ΅Π½Π½Ρ‹ΠΌ Ρ€ΠΎΠΌΠ±ΠΎΠΌ Π½Π° ΠΊΠΎΠ½Ρ†Π΅ (рис. 6.10).

ΠžΠ±ΠΎΠ±Ρ‰Π΅Π½ΠΈΠ΅.

Рис. 6.8. ΠžΠ±ΠΎΠ±Ρ‰Π΅Π½ΠΈΠ΅

Рис. 6.9. АгрСгация

ΠšΠΎΠΌΠΏΠΎΠ·ΠΈΡ†ΠΈΡ.
Рис. 6.10. ΠšΠΎΠΌΠΏΠΎΠ·ΠΈΡ†ΠΈΡ.

Рис. 6.10. ΠšΠΎΠΌΠΏΠΎΠ·ΠΈΡ†ΠΈΡ

ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΈΠ·ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ класс изобраТаСтся Π·Π½Π°Ρ‡ΠΊΠΎΠΌ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎΠ³ΠΎ класса с ΠΏΡƒΠ½ΠΊΡ‚ΠΈΡ€Π½Ρ‹ΠΌ ΠΏΡ€ΡΠΌΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊΠΎΠΌ Π² ΠΏΡ€Π°Π²ΠΎΠΌ Π²Π΅Ρ€Ρ…Π½Π΅ΠΌ ΡƒΠ³Π»Ρƒ, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ ΡƒΠΊΠ°Π·Π°Π½Ρ‹ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ (рис. 6.11). ΠœΠΎΠ΄Π΅Π»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ инстанцированиС ΠΌΠΎΠΆΠ½ΠΎ двумя способами. Π’ΠΎ-ΠΏΠ΅Ρ€Π²Ρ‹Ρ…, ΠΌΠΎΠΆΠ½ΠΎ явным ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡ‚ΡŒ со ΡΡ‚Π΅Ρ€Π΅ΠΎΡ‚ΠΈΠΏΠΎΠΌ «bind», ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‰ΡƒΡŽ, Ρ‡Ρ‚ΠΎ источник инстанцируСт Ρ†Π΅Π»Π΅Π²ΠΎΠΉ шаблон с Π·Π°Π΄Π°Π½Π½Ρ‹ΠΌΠΈ фактичСскими ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°ΠΌΠΈ. Π’ΠΎ-Π²Ρ‚ΠΎΡ€Ρ‹Ρ… ΠΌΠΎΠ΄Π΅Π»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΌΠΎΠΆΠ½ΠΎ нСявно, для Ρ‡Π΅Π³ΠΎ трСбуСтся ΠΎΠ±ΡŠΡΠ²ΠΈΡ‚ΡŒ класс, имя ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ обСспСчиваСт инстанцированиС. ΠŸΡ€ΠΈΠΌΠ΅Ρ€ использования Π΄Π°Π½Π½Ρ‹Ρ… способов прСдставлСн Π½Π° Ρ€ΠΈΡ. 6.11−6.12 для стСка ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ΠΎΠ², рассмотрСнного Π² ΠΏ. 4.5.

Π―Π²Π½ΠΎΠ΅ связываниС.

Рис. 6.11. Π―Π²Π½ΠΎΠ΅ связываниС

НСявноС связываниС.

Рис. 6.12. НСявноС связываниС

ΠŸΡ€ΠΈΠΌΠ΅Ρ€. На Ρ€ΠΈΡ. 6.13 прСдставлСна систСма классов, слуТащая для модСлирования процСсса обслуТивания систСмы управлСния ΠΊΠ»ΠΈΠΌΠ°Ρ‚ΠΎΠΌ Π² Ρ‚Π΅ΠΏΠ»ΠΈΡ†Π΅. Класс Plan Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ ΠΏΡ€Π°Π²ΠΈΠ»Π° управлСния ΠΊΠ»ΠΈΠΌΠ°Ρ‚ΠΎΠΌ ΠΈ ΠΈΠΌΠ΅Π΅Ρ‚ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΡŽ execute (Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ). Π˜ΠΌΠ΅Π΅Ρ‚ΡΡ ассоциация ΠΌΠ΅ΠΆΠ΄Ρƒ этим классом ΠΈ ΠΊΠ»Π°ΡΡΠΎΠΌ Controller (ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€, ΡƒΠΏΡ€Π°Π²Π»ΡΡŽΡ‰ΠΈΠΉ ΠΊΠ»ΠΈΠΌΠ°Ρ‚ΠΎΠΌ): экзСмпляры класса Plan Π·Π°Π΄Π°ΡŽΡ‚ ΠΊΠ»ΠΈΠΌΠ°Ρ‚, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Ρ‚ΡŒ экзСмпляры класса Controller.

Π­Ρ‚Π° Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠ° Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ класс Controller являСтся Π°Π³Ρ€Π΅Π³Π°Ρ‚ΠΎΠΌ: Π΅Π³ΠΎ экзСмпляры содСрТат Π² Ρ‚очности ΠΏΠΎ ΠΎΠ΄Π½ΠΎΠΌΡƒ экзСмпляру классов Heater (Π½Π°Π³Ρ€Π΅Π²Π°Ρ‚Π΅Π»ΡŒ) ΠΈ Cooler (ΠΎΡ…Π»Π°ΠΆΠ΄Π°ΡŽΡ‰Π΅Π΅ устройство), ΠΈ Π»ΡŽΠ±ΠΎΠ΅ число экзСмпляров класса Light (Π»Π°ΠΌΠΏΠΎΡ‡ΠΊΠ°). Оба класса Heater ΠΈ Cooler ΡΠ²Π»ΡΡŽΡ‚ΡΡ подклассами абстрактного Π·Π°ΠΏΡƒΡΠΊΠ°ΡŽΡ‰Π΅Π³ΠΎ процСсс класса Actuator, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ прСдоставляСт ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Ρ‹ startUp ΠΈ shutDown (Π½Π°Ρ‡Π°Ρ‚ΡŒ ΠΈ ΠΏΡ€Π΅ΠΊΡ€Π°Ρ‚ΠΈΡ‚ΡŒ соотвСтствСнно) ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ класс Temperature.

ΠšΠ»Π°ΡΡΡ‹ для описания процСсса обслуТивания систСмы управлСния ΠΊΠ»ΠΈΠΌΠ°Ρ‚ΠΎΠΌ.

Рис. 6.13. ΠšΠ»Π°ΡΡΡ‹ для описания процСсса обслуТивания систСмы управлСния ΠΊΠ»ΠΈΠΌΠ°Ρ‚ΠΎΠΌ

Бвязь интСрфСйса с Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΡŽΡ‰ΠΈΠΌ Π΅Π³ΠΎ элСмСнтом ΠΌΠΎΠΆΠ½ΠΎ графичСски ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ двумя способами. ΠŸΡ€ΠΎΡΡ‚Π°Ρ Ρ„ΠΎΡ€ΠΌΠ° позволяСт ΠΈΠ·ΠΎΠ±Ρ€Π°Π·ΠΈΡ‚ΡŒ ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡ ΠΌΠ΅ΠΆΠ΄Ρƒ интСрфСйсом ΠΈ Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΡŽΡ‰ΠΈΠΌ Π΅Π³ΠΎ классом Π² Π²ΠΈΠ΄Π΅ ΠΊΡ€ΡƒΠΆΠΊΠ° с ΠΎΠ΄Π½ΠΎΠΉ стороны класса (рис. 4.3−4.4). Если интСрфСйс прСдставлСн Π² Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π½ΠΎΠΉ Ρ„ΠΎΡ€ΠΌΠ΅, Ρ‚ΠΎ ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠ΅ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ°ΡŽΡ‚ Π² Π²ΠΈΠ΄Π΅ ΠΏΡƒΠ½ΠΊΡ‚ΠΈΡ€Π½ΠΎΠΉ Π»ΠΈΠ½ΠΈΠΈ с Π±ΠΎΠ»ΡŒΡˆΠΎΠΉ Π½Π΅Π·Π°ΠΊΡ€Π°ΡˆΠ΅Π½Π½ΠΎΠΉ стрСлкой, Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½Π½ΠΎΠΉ Π² ΡΡ‚ΠΎΡ€ΠΎΠ½Ρƒ интСрфСйса (рис. 6.14). Π—Π°Π²ΠΈΡΠΈΠΌΠΎΡΡ‚ΡŒ ΠΌΠ΅ΠΆΠ΄Ρƒ классом ΠΈ ΠΈΠ½Ρ‚СрфСйсом показываСтся Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π½ΠΎ зависимости ΠΌΠ΅ΠΆΠ΄Ρƒ классами.

Рис. 6.14. ΠžΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡ ΠΌΠ΅ΠΆΠ΄Ρƒ классами ΠΈ ΠΈΠ½Ρ‚СрфСйсом

ΠŸΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ вСсь тСкст
Π—Π°ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ Ρ„ΠΎΡ€ΠΌΡƒ Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ Ρ€Π°Π±ΠΎΡ‚ΠΎΠΉ