1.1.2. Třída

Každý objekt je instancí určité třídy, která definuje množinu vlastností (atributů a operací) společných pro všechny své instance. Například třída Zákazník může definovat, že každá její instance má identifikační číslo, jméno a adresu zákazníka. Konkrétní instancí této třídy pak může být např. objekt (12756, "Jan Novák", "Palackého 18, 612 00 Brno"). Grafickou reprezentaci takového objektu v jazyce UML ukazuje Obr. 1.1.

Obrázek 1.1. Grafická reprezentace objektu

Značka objektu obsahuje v horní části identifikátor objektu tvořený názvem objektu a názvem třídy začínajícím dvojtečkou. Jedna z těchto dvou částí může chybět, například pokud se na objekt nepotřebujeme odkazovat jeho jménem nebo pokud ještě nemáme určené třídy. Identifikátor objektu je vždy podtržen, čímž zdůrazňujeme fakt, že jde o konkrétní instanci a ne o celou třídu objektů. Spodní část značky obsahuje nepovinně atributy, které mohou být dále doplněny typem a hodnotou.

Obrázek 1.2. Grafická reprezentace třídy

Pro znázornění třídy se používá podobné značky, pouze s tím rozdílem, že v horní části značky je uvedeno pouze jméno třídy a značka může být doplněna ještě další sekcí obsahující jména operací a případně i typy jejich parametrů a výsledku. Na Obr. 1.2 je nakreslena značka třídy Zákazník, podle které zjistíme, že třída Zákazník má tři atributy - číslo typu int, jméno a adresa typu String - a metodu změnitAdresu() s parametrem typu String. Pokud chceme graficky vyjádřit vztah mezi třídou a jejími instancemi, použijeme čárkované šipky vedoucí od objektu k třídě, jak ukazuje Obr. 1.3. U atributů objektů již neuvádíme typy, neboť ty jsou zřejmé z popisu třídy Zákazník.

Obrázek 1.3. Znázornění vztahu „objekt je instancí třídy“