Jest to specjalna metoda która jest wywoływana podczas tworzenia nowej instancji klasy. Konstruktor to metoda o takiej samej nazwie jak klasa (bądź struktura). Nie zwraca żadnej wartości.
Główne zadanie konstruktora to inicjalizacja elementów obiektu podczas tworzenia instancji klasy.
Gdy nie tworzymy instruktora, kompilator automatycznie utworzy konstruktor domyślny dla naszej klasy. Konstruktor domyślny inicjalizuje wszystkie pola numeryczne jako zero a wszystkie pola typu String lub obiekty jako NULL.
Przykładowy konstruktor:
public class BlogEntry
{
   public BlogEntry()
  {
      //do something
   }
}

Wiele konstruktorów

Klasa może zawierać dowolną ilość konstruktorów. Konstruktory mogą być przeciążane tak samo jak zwykłe metody. Wymagane jest, by różniły się typem przyjmowanych parametrów bądź ich liczbą.
Przykład:
public class BlogEntry
{
   private string name;
   public BlogEntry(string name)
  {
      this.name = name;
   }
}
Sanoy 01-01-2019 03:24
Myślę, że warto byłoby dodać, że jawna implementacja jakiegokolwiek konstruktora uniemożliwi korzystanie z domyślnego konstruktora nieprzyjmującego argumentów, żeby móc go użyć należy jawnie go zaimplementować.

alsenq 02-02-2022 01:43
Czy klasa może mieć konstruktor prywatny?

bobs1 03-02-2022 12:43
Tak. Klasa może mieć konstruktor prywatny.

Gerappa 03-02-2022 09:20
Konstruktor prywatny wykorzystywany jest w wzorcu projektowym singleton (https://refactoring.guru/pl/design-patterns/singleton)


© 2024 - SkillsTest.pl | | Regulamin | Polityka Prywatnosci