Přeskočit na obsah

Třída (programování)

Z Wikipedie, otevřené encyklopedie

Třída je základní konstrukční prvek objektově orientovaného programování sloužící jako předpis pro vznik objektu jako instance třídy. Může odpovídat pojmům z reálného světa, tj. v informačním systému realizovaném programem psaném v objektově orientovaném jazyce mohou existovat třídy Zákazník, Objednávka, Faktura apod. Třída definuje vlastnosti (atributy) a metody (též funkce) objektů, které při běhu programu vzniknou (též instancí). Hodnoty vlastností (atributů) se mohou u jednotlivých instancí objektů odlišovat (každá instance Objednávky může mít jinou celkovou cenu), na každém objektu (vzniklém z jedné třídy) můžeme zavolat (použít) shodnou sadu metod.

UML zavádí dva typy vztahů mezi třídami – asociaci a generalizaci.

  • asociace vyjadřuje budoucí vztahy mezi instancemi, které ze tříd (spojených asociací) vzniknou
  • generalizace (též dědičnost) vyjadřuje vztah mezi třídami, který se při běhu programu projeví v okamžiku instancializace (vzniku objektu)

Abstraktní třída

[editovat | editovat zdroj]

Abstraktní třída neumožňuje vytvářet objekty (instance). Slouží jako předpis (metod a atributů) pro další (konkrétní) třídy odvozené pomocí dědičnosti. Metody abstraktní třídy mohou být

  • implementované, tj. ve třídě potomka budou přímo použitelné díky dědičnosti;
  • neimplementované, předepisující pouze hlavičky (název, argumenty a návratové typy), jejichž implementace je vyžadována ve třídě potomka.

Lze tedy říci, že se jedná o šablonu pro vytváření specifické skupiny tříd.

Příklad třídy v jazyce Java

[editovat | editovat zdroj]
public class Clovek {
    /*atributy jméno a věk*/
    private String jmeno;
    private int vek;
    
    /*konstruktor - při instancializaci, tj. vzniku objektu, musí být zadány hodnoty atributů jméno a věk*/
    public Clovek(String jmeno, int vek) {
        this.jmeno = jmeno;
        this.vek = vek;
    }
    
    /*funkce resp. metody, které bude možné na instanci - objektu - použít (zavolat)*/
    public String getJmeno() {
        return jmeno;
    }
    
    public int getVek() {
        return vek;
    }
    
    public void udelejUkoly() {
        ...
    }
    
    public void zavriOkno() {
        ...
    }
}

Související články

[editovat | editovat zdroj]

Literatura

[editovat | editovat zdroj]
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy