Java - Operace s Třídami (22.díl)

Napsal O webu (») 22. 2. 2008 v kategorii Programování, přečteno: 2766×
obrazky/java_logo.png

 

Konstruktor

Konstruktor představuje speciální metodu používanou při inicializaci datových položek. V předchozím kódu jsme použili poněkud nepohodlný způsob ve tvaru objekt.polozka. Tuto konstrukci by v některých případech nebylo možno použít, k datovým položkám deklarovaných jako privátní bychom se nedostali z vnějšku třídy.

Při inicializování datových položek je proto používána specializovaná metoda zvaná konstruktor. Je volán v okamžiku vytvoření objektu.
Souradnice sour;
sour=new Souradnice(); //ted je volan konstruktor


Konstruktor má následující vlastnosti

  • Jméno konstruktoru je shodné se jménem třídy.
  • Konstruktor nemá žádnou návratovou hodnotu, ani void. Nesmí obsahovat klíčové slovo return.
  • Konstruktor může mít parametry (explicitní konstruktor) nebo nemusí (implicitní konstruktor).
  • Konstruktor může být přetížen.

    Konstruktor tedy umožňuje provádět inicializaci objektu při jeho vytvoření. Implicitní konstruktor. Implicitní konstruktor je konstruktor bezparametrický. Pokud nevytvoříme konstruktor vlastní, je automaticky generován právě implicitní konstruktor. Ten umožňuje provést inicializaci datových položek na výchozí hodnoty. V našem případě by byly proměnné delka, uhel inicializovány na hodnoty 0.

    Pokud bychom chtěli v rámci implicitního konstruktoru inicializovat proměnné na jiné než výchozí hodnoty, museli bychom si konstruktor napsat sami. Následující konstruktor provede inicializaci datových položek třídy na hodnoty 10(délka) a 20 (úhel).
    Souradnice()
    {
    delka=10;
    uhel=20;
    }

    Pokud budeme vytvářet nové instance třídy souřadnice podle implicitního konstruktoru, všechny datové položky objektů budou inicializovány na stejné hodnoty. Podobného výsledku bychom mohli dosáhnout, pokud bychom upravili deklaraci třídy, a obě proměnné inicializovali zde.
    public class Souradnice
    {
    private double delka=10;
    private double uhel=20;
    ...
    }


    Odkaz this

    Existuje speciální typ odkazu, který má každá z metod. Odkaz this ukazuje na objekt, se kterým byla metoda volána. Tento odkaz je skrytý, není potřeba ho někde inicializovat. Zaručuje, že každá metoda pracuje s daty svého objektu. S odkazem this pracujeme také prostřednictvím tečkové notace. Pro bližší pochopení lze výše uvedený implicitní konstruktor zapsat prostřednictvím this.
    Souradnice()
    {
    this.delka=10;
    this.uhel=20;
    }


    Autor: Filip Koval
  • Štítky: Java
    Facebook Twitter Topčlánky.cz Linkuj.cz

    Komentáře

    Zobrazit: standardní | od aktivních | poslední příspěvky | všechno
    Článek ještě nebyl okomentován.


    Nový komentář

    Téma:
    Jméno:
    Notif. e-mail *:
    Komentář:
      [b] [obr]
    Odpovězte prosím číslicemi: Součet čísel devět a čtyři