Inicjalizacja obiektów w konstruktorze.

0

Zaczynam przygodę z c# i dlatego proszę o wyrozumiałość.
W przeglądanych przykładach z c# znalazłem dwa sposoby na inicjalizacje obiektu w klasie.

Pierwszy to deklaracja razem z inicjalizacją a drugi to tylko sama deklaracja obiektu a inicjalizacja w konstruktorze.

class KlasaA
{
KlasaB b1 = new KlasaB();
KlasaB b2;

public KlasA()
{
b2 = new KlasaB();
}

}

Bardzo proszę o wyjaśnienie kiedy stosuje się oba te sposoby deklaracji i inicjalizacji obiektów.

2

Inicjalizacje w konstruktorze stosuje się jak chcesz do tego konstruktora przekazać jakieś parametry od których będzie zależała ta inicjalizacja. Ale równie dobrze mozesz inicjalizować w konstruktorze nawet jak nie zalezą te pola/wlasciwości od parametrów, lub ich brak. Jak wolisz.
Inicjalizacja podczas deklaracji jest wykonywana wcześniej niż ta w konstruktorze. Oszczędza też linijki kodu.

0

Bardzo dziękuje za pomoc. Przed zadaniem pytania oczywiście starałem się znaleźć odpowiedź ale chyba mało precyzyjnie sformułowałem zapytanie w goolach. Teraz już łapie o co chodzi i chyba już wszystko jest jasne. Jeszcze raz dziękuje.

1 użytkowników online, w tym zalogowanych: 0, gości: 1