@NiePrzystosowanyDoZycia: hm... a przejrzałeś w ogóle ten kod? Bo wydaje się że jest bardzo oczywistym dlaczego to nie działa. Sam go napisałeś czy skądś wziąłeś?
@dobry_programista: ucze się dopiero, wcześniej wszystko w main pisałem a teraz chce to dzielić na obiekty, klasy itp. Stworzyłem klase zwierzęta, dałem atrybuty. Dopisałem funkcje aby dodawało zwierzę. Później stworzyłem obiekt zwierzaka z1 i chciałem mu dodać opis. Nie wiem w sumie gdzie błąd popełniłem. I nie wiem czemu robić tak, że wartość obiektu ma mieć null?
@NiePrzystosowanyDoZycia metoda dodawania nie robi nic więcej oprócz zebrania inputów i przypisania ich do nowych zmiennych, które i tak "giną" po tym jak kończy się tą metoda.
@NiePrzystosowanyDoZycia: a skąd wziąłeś to że obiekt ma mieć null? Właśnie przez to Ci to nie działa i w takich przypadkach nigdy tak się nie robi. Poczytaj sobie o konstruktorach, który musisz tutaj wywołać aby ten kod zadziałał. W skrócie Ci teraz tylko podam, że zamiast:
@NiePrzystosowanyDoZycia: Żeby być w pełni formalnie poprawnym to nie tyle źle stworzyłeś obiekt klasy co w ogóle go nie stworzyłeś. No i jeszcze poczytaj o scope i przysłanianiu zmiennych i pól bo aktualnie metoda dodaj_zwierze() przypisuje wartości do zmiennych lokalnych które nie są dostępne po wyjściu z niej.
@NiePrzystosowanyDoZycia: i taka drobna rada - nie używaj polskich znaków typu ę bo z tego mozesz miec potem problemy. Dwa z czego korzystasz podczas nauki ?
@NiePrzystosowanyDoZycia: Poczytaj o tym więcej, mirek jest spoko ale też nie jest idealny - pamiętaj o tym. W googlach masz też dużo tutków o inicjowaniu obiektów itp
@bi-tek: @dobry_programista: Nie mam teraz za bardzo jak sprawdzić, chcę się tylko dopytać to może mi ktoś z was odpowie - jak tutaj OP zadeklarował zmienne, np. int wiek; na początku klasy, to potem w metodzie nadal pisze typ zmiennej - po pierwsze: to chyba nie jest wymagane? po drugie: nie jest to coś co nawet nie powinno mieć miejsca bo bedzie powodować warrningi/errory?
@Najkon: zakładając, że OP chciał wartości z klawiatury zapisywać w polach klasy (czyli w zdefiniowanych polach takich jak int wiek itp.), to ten sposób jest całkowicie błędny, gdyż OP tworzy lokalne zmienne o takich samych nazwach i do nich przypisuje wartości. Docelowo powinien użyć tylko nazw pól klasy, aby do nich przypisać wartości. Ten kod jednak nie spowoduje żadnych ostrzeżeń czy błędów kompilacji - taka opcja (utworzenie lokalnych zmiennych o
Przeszedłem sobie polskie Beskidy. 533 kilometry wyszły w 17 dni ( ͡°͜ʖ͡°)
Spakowany w plecak 32 litry, 10 kilogramów na plecach z pełnym prowiantem i własnym śpiworem. Przyjemnie się tuptało tylko większość czasu był upał 35 stopni co po prostu wykańczało
czemu to nie działa?
https://pastebin.com/3YDMKnKr
Poczytaj sobie o konstruktorach, który musisz tutaj wywołać aby ten kod zadziałał. W skrócie Ci teraz tylko podam, że zamiast:
zwierzęta z1 = null;powinno
No i jeszcze poczytaj o scope i przysłanianiu zmiennych i pól bo aktualnie metoda dodaj_zwierze() przypisuje wartości do zmiennych lokalnych które nie są dostępne po wyjściu z niej.
Ten kod jednak nie spowoduje żadnych ostrzeżeń czy błędów kompilacji - taka opcja (utworzenie lokalnych zmiennych o