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() { ... } }