Uživatelské nástroje

Nástroje pro tento web


class

Class (Třída v OOP)

Třída definuje vlastnosti a chování, které budou mít všechny objekty z ní vytvořené. Zatímco třída je pouze teoretický popis (např. výkres domu), objekt je již existující entita (konkrétní postavený dům).


Struktura třídy

Každá třída se skládá ze dvou hlavních složek:

1. **Atributy (Vlastnosti / Data):** Proměnné, které uchovávají stav objektu (např. barva, jméno, velikost).
2. **Metody (Funkce / Chování):** Funkce, které definují, co objekt umí dělat (např. jet, mluvit, vypočítat cenu).

Vztah mezi třídou a objektem (Instanciace)

Proces vytvoření konkrétního objektu ze třídy se nazývá instanciace. Z jedné třídy můžeme vytvořit nekonečné množství objektů, z nichž každý může mít jiné hodnoty atributů.

Šablona (Třída: Auto) Objekt A (Instance) Objekt B (Instance)
Atribut: barva červená modrá
Atribut: značka Škoda BMW
Metoda: nastartuj() (společné chování) (společné chování)

Čtyři pilíře OOP spojené s třídami

Práce s třídami se opírá o čtyři základní principy:

1. Zapouzdření (Encapsulation)

Třída skrývá svá vnitřní data před vnějším světem. Přístup k nim je povolen pouze přes veřejné metody (např. pomocí tzv. getterů a setterů). Tím se zajišťuje, že nikdo omylem nezmění vnitřní stav objektu nevalidním způsobem.

2. Dědičnost (Inheritance)

Třídy mohou tvořit hierarchie. Nová třída (potomek) může převzít vlastnosti a metody existující třídy (rodič) a přidat k nim své vlastní. * *Příklad:* Třída Pes a Kočka dědí od obecné třídy Zvíře.

3. Polymorfismus (Mnohotvárnost)

Umožňuje různým třídám reagovat na stejné volání metody různým způsobem. * *Příklad:* Metoda vydejZvuk() u třídy Pes vyštěkne, zatímco u třídy Kočka zamňouká.

4. Abstrakce (Abstraction)

Třída umožňuje uživateli pracovat se složitým systémem pomocí jednoduchého rozhraní, aniž by musel rozumět vnitřní implementaci.


Speciální metody třídy

* Konstruktor: Speciální metoda, která se zavolá automaticky v okamžiku vytvoření objektu. Slouží k nastavení výchozích hodnot atributů. * Destruktor: Metoda, která se provede při zániku objektu (v moderních jazycích jako Java nebo Python se o toto často stará Garbage Collector).


Příklad (Pseudokód)

class Pes {
    // Atributy
    String jmeno;
    int vek;
 
    // Konstruktor
    Pes(String jmeno) {
        this.jmeno = jmeno;
    }
 
    // Metoda
    void stekej() {
        print(jmeno + " říká: Haf!");
    }
}
 
// Vytvoření objektu
Pes mujPes = new Pes("Alík");
mujPes.stekej(); // Výstup: Alík říká: Haf!

Související pojmy: Objekt, OOP, Instance, Dědičnost, Zapouzdření, Polymorfismus, Konstruktor.

class.txt · Poslední úprava: autor: admin