Warning
This page is located in archive.

Konstruktory

Při vytváření objektu je vždy dána možnost inicializace datových prvků objektu voláním specializované metody, která se nazývá konstruktor. Tato metoda má stejné jméno jako jméno třídy a nemá žádnou návratovou hodnotu. Konstruktor není povinná složka třídy, pokud není napsán Java vytvoří implicitní konstruktor sama. Inicializaci je možné také provést deklarování proměnných s inicializací. Tuto inicializaci je nutné provést před voláním implicitního a explicitního konstruktoru.

Třída s konstruktorem:

public class Ctverec {
 
 public int delkaStrany;
 
 public Ctverec (int parDelkaStrany){   // konstruktor
   delkaStrany = parDelkaStrany         // jednotlive prikazy konstruktoru
   }                                    // konec konstruktoru
 public int obvod(){
   ...
   }
 public int obsah() {
   ...
   }
}

Třída s inicializací bez konstruktoru:

public class Ctverec {
 
 public int delkaStrany = 5;  // inicializace - kazdy vytvoreny objekt ma delku strany 5
 
  public int obvod(){
   ...
   }
 public int obsah() {
   ...
   }
}
Pro konstruktory a metody třídy lze také použít jejich přetížení. Pro přetěžování platí stejná pravidla jako pro přetěžování metod. Pokud vytvoříme jakýkoliv konstruktor s parametry, Java již nevytvoří implicitní konstruktor (bez parametrů). Budeme-li jej potřebovat, je nutno jej vytvořit.

public class Ctverec {
 
 public int delkaStrany;
 
 public Ctverec (){   // implicitni konstruktor
   delkaStrany = 4;   // jednotlive prikazy konstruktoru
   }                  // konec impl. konstruktoru
 
 public Ctverec (int parDelkaStrany){   // konstruktor
   delkaStrany = parDelkaStrany         // jednotlive prikazy konstruktoru
   }                                    // konec konstruktoru
 
 public int obvod(){
   ...
   }
 public int obsah() {
   ...
   }
}

courses/a0b36pri/tutorials/12/konstruktory.txt · Last modified: 2015/01/16 21:04 (external edit)