Zępón* w firwHew^wą «M»1mą r kardą operacją moZna »fcrv przeć wtalciwok' Doalfpnr M na«tcpvincr wta*cm-o4a
Hskannt rr i^vraqi n^Ttn wartość hn |*kiqkolwKi mo <tefch.*T kUv* Właściwość U mott bu' odwzorowywana
IM #|%v ihlCtt^T f«mt w O*
W-
ł\'4x*ur ar oprzaoa mott być wywoływana jnłmradnie «*hTw prw prdm »-(ki programu tnacnj mówiąc w^ół-tarcnr MTwalanic «Tpcrac?i nw* jr*t Uspimne i wywołujący rmn odpowiadmo tfrmwać dostępem do mq I kalanie nperaoi w4wctwfx?| jrM unuwwo n niezdefiniowane w przepadku. gdv w*śr iffjfdw knrzyrta * mn jednocześnie
Podlew do wo«Rt:«l. ale mru operacji wymuo* zasadę, ar rrlk. prdro wprł jndnuocinir mott ją wywołać w danym Rumernr Wąullbrjw wywołania tci operacji M obdugi-warw aekwencypnic penrj operację. bez żadnego nakładu prań prm wywołującego Właściwość u mott być odwzorowywana na metody lyncfcrontBd w języku Java.
cwrm
Gwarantuje. tt współbieżne wywołanie operacji jest bez-panam mott ona jednocześnie obsługiwać wiele wątków wywołujący di
¥/ pmorwtenttwtr do atnbutów, operacje mogą być abstrakcyjne, <x» oznacza, n klasa nie dostarcza uh implementacji Nazwy ope-r*. i ryjnych są oznaczane pochyłą czcionką Zwykle
w^azur fcj. Zr zawwrająca je klasa jo»t klasą abstrakcyjną, a jej nazwa jc*t również oznaczana pochyłą czcionką Na rysunku 13.
B*M^ywchfOftU>T~
MyncW^ł*io>^tt>55{J
pokazany )cnt przykład operacji abstrakcyjnej Implementacja takiej operacji musi być dostarczona przez klasę pochodny Rysunek 13. Operacja atntrakcyjna
Operacjo mogą mieć zasięg ograniczony do instancji klasy »w takim przypadku mają zasięg instant ii. Mogą być również współdzielone pomiędzy obiektami (Italie) i w takim przypadku mają one zasięg klasyfikatora, na diagramie są podkreślono, tak jak na rysunku 14
CtMduumV»ll4atof | ||
• v*lKUI*Ch©ck*um< AMa bytofl. cMOcwm tong) bodean | ||
Rysunek 14. Operacja o zasięgu klasyfikatora
Niektóre języki programowania pozwalają na definiowanie klas bez określania konkretnego typu, na jakim działa klasa. Na dalszym etapie użytkownik klasy szablonowej może określić docelowy typ i korzystać z bezpieczeństwa typów w czasie kompilaqi. UMI. umożliwia modelowanie klas szablonowych przez umieszczenie w prawym górnym rogu zwykłej klasy, prostokąta z przerywanym brzegiem, w którym znajduje się parametr szablonu. Zostało to pokazane na rysunku ł5.
Kojarzenie właściwego typu z klasą szablonowy jest nazywane wiązaniem. UMI zapewnia dwa sposoby reprezentacji wiązania szablonów Pierwszy jest podobny do składni wykorzystywanej
29
Diagramy klas