UML definiuje 4 poziomy widoczności cech i metod, które należy wyspecyfikować w PI
+ publiczny - element jest widoczny z każdego miejsca w systemie # chroniony - element jest widoczny we własnej klasie i jej podklasach - pry w atny - element jest w idoczny tylko w e własnej klasie ~ publiczny wewnątrz pakietu - element jest widoczny tylko wewnątrz własnego pakietu
Projektowanie systemów informatycznych, wykład 2
4
Podobnie jak w wielu wysokopoziomowych językach programowania, UML posiada 4 poziomy widoczności: publiczny, chroniony, prywatny i publiczny wewnątrz pakietu. Poziomy te zwykle są do opisywania widoczności cech (atrybutów i asocjacji) oraz operacji, jednak dotyczą także np. klas pakietów.
Podstawowa zasada dotycząca widoczności jest taka, że każda klasa ma składowe publiczne i prywatne. Składowe publiczne mogą być używane przez dowolną inną klasę, natomiast składowe prywatne mogą być używane jedynie przez klasę-właściciela. Niestety, każdy język ma własne reguły. Mimo że w wielu językach używa się terminów takich jak „publiczny", „prywatny" i „chroniony", to są im nadawane różne znaczenia. Różnice znaczeniowe są małe, ale wprowadzają zamieszanie, szczególnie jeśli używa się kilku języków programowania.
Podczas używania zasięgu widoczności, należy użyć reguł języka, w którym pracujemy. Gdy analizujemy model UML nieznanego pochodzenia, wówczas należy zwracać uwagę na znaczenie wskaźników zasięgu widoczności i zdawać sobie sprawę, że to znaczenie różni się w poszczególnych językach programowania.
Przykładowo w C++ mamy tylko trzy zakresy widoczności. Nie reprezentowany jest zakres „publiczny wewnątrz pakietu”.
4