7. Konstruktory

7.1. Implicitní konstruktor

Pokud ve třídě nedefinujeme vlastní konstruktor, vytvoří si ho kompilátor sám a my ho můžeme používat. Tento výchozí konstruktor nepřijímá žádné parametry. Takový konstruktor má prázdné tělo, a pokud je veřejně přístupný (public), můžeme vytvářet instance z jiné třídy.

Konstruktor voláme při vytváření nové instance pomocí operátoru new. Syntaxe volání konstruktoru vypadá následovně:

new identifikátorTřídy()

Hodnotou takového výrazu konstruktoru je odkaz na vytvořenou instanci třídy. Konstruktory se nedědí.

Vraťme se k příkladu třídy Auto. 


Ilustrativní příklad AutoImplicitniKonstruktor
Program AutoImplicitniKonstruktor
  • Popis: Vytvoření instance třídy pomocí implicitního konstruktoru
  • Zadání: Vytvořte novou instanci třídy autoOctavia předchozí nestatické třídy Auto 
  • Řešení: Bude postupně probráno v následujícím textu

Pomocí následujícího kódu vytvoříme instanci této třídy pomocí zavolání implicitního (výchozího) konstruktoru – viz Kód 1. Tento typ konstruktoru voláme, pokud si nedeklarujeme vlastní konstruktor ve třídě. Pokud datové složky nebyly přímo inicializovány při deklaraci, jsou jim automaticky nastaveny výchozí předdefinované hodnoty – viz kapitola Nestatické datové složky - Tabulka 1. Instanci pojmenujeme autoOctavia.

//Vytvoření instance třídy Auto pomocí volání implicitního konstruktoru
Auto autoOctavia = new Auto();

Kód 1: Příklad vytvoření instance třídy Auto pomocí implicitního konstruktoru