Tworzenie obiektów - 1

– Cześć, to znowu ja – twój ulubiony nauczyciel. Robisz tak wielkie postępy, że postanowiłem opowiedzieć Ci o obiektach i o tym, jak z nimi pracować.

Aby utworzyć obiekt, musisz wpisać słowo kluczowe „new”, a następnie nazwę typu (nazwę klasy). Załóżmy, na przykład, że mamy klasę o nazwie 'Kot':

Kod Opis
Kot kot;
Deklaruje zmienną kot będącą referencją do Kot. Zmienna kot ma wartość null.
new Kot();
Tworzy obiekt Kot.
Kot kot = new Kot();
Tworzy zmienną kot będącą referencją do Kot.
Tworzy nowy obiekt Kot. Przypisuje do zmiennej kot referencję do nowo utworzonego obiektu.
Kot kotek = new Kot();
Kot smoluch = new Kot();
Tworzone są dwa obiekty. Referencje do nich są przypisywane do dwóch różnych zmiennych.
Kot kotek = new Kot();
Kot smoluch = new Kot();

smoluch = kotek;
Tworzone są dwa obiekty. Referencje do nich są przypisywane do dwóch różnych zmiennych.

Następnie przypisujemy zmiennej smoluch wartość równą referencji do obiektu, do którego odwołuje się zmienna kotek. Obie zmienne odnoszą się teraz do pierwszego z utworzonych obiektów.
(Ponieważ do drugiego obiektu nie ma już nigdzie odniesienia, jest on teraz uważany za nieużytek)

Kot kotek = new Kot();
Kot smoluch = null;

smoluch = kotek;

kotek = null;
Tworzony jest jeden obiekt Kot i referencja do niego jest przypisywana do pierwszej zmiennej (kotek). Druga zmienna (smoluch) przechowuje pustą (null) referencję.

Obie zmienne odwołują się do tego samego obiektu.

Teraz tylko smoluch, ale nie kotek, odnosi się do obiektu.

1
Zadanie
Składnia Java,  poziom 2lekcja 3
Niedostępne
Jeden kot to za mało
Jak pewnie wiesz, nie od razu Rzym kotami zapełniono. Ale obiekty można tworzyć naprawdę szybko. Załóżmy małe stowarzyszenie miłośników kotów: stwórz dwa obiekty Kot i nadaj im imiona. Pamiętaj, że każdy kot jest inną osobowością, więc imiona muszą być różne.

– Co by się stało, gdybyśmy stworzyli obiekt i nie zapisali referencji do niego w żadnej zmiennej?

– Jeżeli po prostu utworzymy obiekt bez przypisywania go do zmiennej, maszyna Java utworzy go, a następnie zadeklaruje jako nieużytek/śmieć (obiekt nieużywany). Po chwili obiekt ten zostanie usunięty przez proces „odśmiecania” (garbage collection).

– Jak pozbywam się niepotrzebnego już obiektu?

– Nie robisz tego. Gdy tylko do obiektu nie odnosi się żadna zmienna, jest on oznaczany jako nieużytek i niszczony przez maszynę Java w następnym cyklu zbierania nieużytków/odśmiecania pamięci.

Tak długo, jak istnieje przynajmniej jedna referencja do obiektu, jest on uważany za aktywny i nie zostaje usunięty. Jeżeli chcesz pozbyć się obiektu wcześniej, możesz wyczyścić wszystkie referencje do niego, przypisując wartość null wszystkim zmiennym, które się do niego odwołują.

– Rozumiem. W porównaniu do kilku ostatnich lekcji wygląda to dość prosto.

– Diego nie spał całą noc, wymyślając dla Ciebie zadania. Robił to specjalnie z myślą o Tobie. Ma niezłe poczucie humoru, co?

1
Zadanie
Składnia Java,  poziom 2lekcja 3
Niedostępne
Max, Bella i Azor
Kiedy otworzysz to zadanie, znajdziesz w nim klasę Pies. Musimy stworzyć kilka psów. Wymyśliliśmy już ich historie: wiemy, jak wyglądają, na jakie imiona reagują itp. W tym zadaniu interesują nas następujące elementy: utwórz trzy obiekty Pies i nadaj im imiona: „Max”, „Bella” i „Azor”.
1
Zadanie
Składnia Java,  poziom 2lekcja 3
Niedostępne
Subiektywna rzeczywistość
Kiepski tancerz potyka się o własne stopy, a programistę najbardziej zaskakuje jego język programowania. Miejska legenda, powszechnie znana wśród młodych programistów, mówi: „Jeśli będziesz źle programować, przyjdzie Java i zje Twoją pamięć”. Dlaczego nie wyświetlić tego powiedzenia w konsoli? I pamiętaj, żeby chronić swoją pamięć! Ona nie jest nieograniczona.
1
Zadanie
Składnia Java,  poziom 2lekcja 3
Niedostępne
Wprowadzanie kodu
Nie musisz myśleć, po prostu go wyklep! Brzmi to trochę paradoksalnie, ale czasami Twoje palce „pamiętają” kod lepiej niż Twój świadomy umysł. Właśnie dlatego trening w tajnym centrum CodeGym zawiera zadania wymagające wprowadzania kodu. Wprowadzając kod, przyzwyczajasz się do składni oraz zarabiasz ciemną materię. Co więcej, walczysz z własnym lenistwem!