Konstruktor to metoda, który uruchamia się w trakcje tworzenia nowego obiektu, czyli w momencie użycia operatora new. Deklarację konstruktora umieszczamy wewnątrz klasy, a jego nazwa jest identyczna jak nazwa klasy. Oprócz tego, konstruktory nie mogą zwracać żadnej wartości i nie są dziedziczone.
Przykład:
1 2 3 4 5 6 7 8 9 10 11 12 |
public class Konstruktor { public Konstruktor() { // nazwa konstruktora = nazwa klasy System.out.println("Hello World!"); } public static void main(String args[]) { Konstruktor k = new Konstruktor(); // wyświetli: Hello World! } } |
Konstruktory podobnie jak zwykłe metody mogą pobierać argumenty:
1 2 3 4 5 6 7 8 9 10 11 12 |
public class Konstruktor { public Konstruktor(String komunikat) { System.out.println(komunikat); } public static void main(String args[]) { Konstruktor k = new Konstruktor("Witaj Świecie!"); } } |
W danej klasie można utworzyć więcej niż jeden konstruktor, należy jednak pamiętać o zasadzie, że każdy z nich musi mieć różne argumenty:
1 2 3 |
public Konstruktor(String komunikat) { } public Konstruktor(String komunikat, int rodzaj) { } public Konstruktor(int liczba) { } |
Aby wywołać konstruktor klasy bazowej należy skorzystać z zapisu super() i dodać go na samej górze wewnątrz instrukcji:
1 2 3 4 5 6 7 8 |
public class Konstruktor extends Baza { public Konstruktor() { super(); // wywołanie konstruktora klasy bazowej System.out.println("Hello World!"); } } |
Jeśli chcemy przekazać wartość / argument do konstruktora bazowego wtedy podajemy go w nawiasie, np: super(nazwa).
Czytaj dalej: METODY I SKŁADOWE STATYCZNE ORAZ FINALNE →