CodeGym/Blog Java/Random-PL/Stary poziom 02
John Squirrels
Poziom 41
San Francisco

Stary poziom 02

Opublikowano w grupie Random-PL

CodeGym – nauka programowania w Javie

Stary poziom 02 - 1Co powiesz na zupełnie nowy sposób nauki programowania i zdobywania wykształcenia? To nie przypomina niczego, co widziałeś wcześniej. Co powiesz na naukę, gdzie masz cel, środki i rezultat? Mam przyjemność zaprezentować Państwu nowe kursy programowania online do nauki języka Java.

1 Training to gra online

Bierzesz zadanie, wykonujesz je i otrzymujesz nagrodę. Myślę, że jest to dla ciebie jasne i powszechne. Zadania są najróżniejsze: czytanie kodu, rozwiązywanie zadań, lekcje wideo, poprawianie błędów w kodzie, dodawanie nowych funkcji, duże zadania, pisanie gier i wiele więcej.

2 Tylko najpotrzebniejsze rzeczy

Aby kurs nie trwał 5 lat, wyrzuciłem z niego wszystko co przydatne i zostawiłem z niego tylko najpotrzebniejsze rzeczy. Przeanalizowałem dziesiątki wolnych miejsc pracy na rynku pracy. Kurs obejmuje wszystkie tematy, które nowicjusz musi znać, aby dostać pracę na stanowisku Java Junior Developer.

3 Dokładnie podszedłem do twojego szkolenia

Kompletny kurs zawiera 500 miniwykładów i 1200 (!) zadań praktycznych . Zadania są małe, ale jest ich dużo. Jest ich bardzo dużo. Tylko to minimum, robiąc to, zdobędziesz tak cenne doświadczenie. Jest też praca w parach, różne gry, duże zadania, prawdziwe projekty i inne rodzaje ćwiczeń.

4 Nie możesz ukończyć gry i nie zostać deweloperem

Kurs zawiera 40 poziomów. Na kolejny poziom możesz przejść tylko wtedy, gdy rozwiązałeś większą część zadań na obecnym poziomie. Począwszy od małych i łatwych, kończąc na dużych i bardzo przydatnych. Każda osoba, która dotrze do końca, otrzyma 300-500 godzin praktycznego doświadczenia. A to daje wielką szansę na wygraną. I dostać pracę.

5 Ukierunkowane na cel przygotowanie do rozmowy kwalifikacyjnej

Ostatnie 10 poziomów poświęconych jest napisaniu CV, przygotowaniu się do rozmowy kwalifikacyjnej oraz nabyciu umiejętności pracy w zespole. Zostaną dodane filmy z rozmów kwalifikacyjnych i ich analizy. No i oczywiście typowe pytania na rozmowie kwalifikacyjnej z odpowiedziami. Stary poziom 02 - 2

6 Możesz rozwiązywać zadania bezpośrednio na miejscu

Jest bardzo poręczny i skuteczny. Po przeanalizowaniu nowego zadania na wykładzie musiałbyś stworzyć własne przez analogię właśnie tutaj, na stronie. Dla tych, którzy chcą wykonać zadanie w IDE, dostępna jest wtyczka, która umożliwia otrzymanie zadania dwoma kliknięciami i przekazanie go do sprawdzenia w jednym . Wykłady, analiza przykładów, rozwiązywanie zadań bezpośrednio na stronie internetowej, rozwiązywanie zadań w IDE - przepaść między teorią a praktyką jest cienka jak nigdy dotąd.

7 Natychmiastowa kontrola zadania (w mniej niż sekundę)

Czy znasz sytuację, kiedy oddałeś zadanie/pracę do sprawdzenia, a na wyniki musiałeś czekać tydzień, bo osoba, która to sprawdza, jest zajęta? Tak jest w przypadku większości kursów offline. W CodeGym uzyskasz wyniki kompilacji i sprawdzenia rozwiązania zadania w mniej niż sekundę, po naciśnięciu przycisku «Wykonaj/Sprawdź».

8 CodeGym uwielbia, gdy podczas nauki spędzasz czas na Facebooku

Na Facebooku jest strona poświęcona projektowi. Można w nim znaleźć ciekawe artykuły techniczne, historie motywacyjne, aktualności CodeGym i wiele innych przydatnych informacji.

9 Zasięg

Na wykładach znajduje się wiele odnośników do różnych stron internetowych, na których można przeczytać wyjaśnienia innych wykładowców. Moim celem jest zrozumienie materiału, a nie tylko słuchanie mnie.

10 Aby zostać programistą, potrzebujesz tylko mózgu i komputera

Zajmie ci to od 3 do 6 miesięcy, w zależności od tego, ile czasu będziesz ćwiczyć.

11 Wsparcie

Stary poziom 02 - 3Bez wątpienia pytania pojawią się, gdy staniesz przed tysiącami zadań. Utworzyliśmy specjalny serwis, w którym będzie można zadawać pytania dotyczące zadań. Inni studenci CodeGym, moderatorzy, wolontariusze i członkowie-założyciele serwisu będą Ci odpowiadać.

12 Społeczność

Wierzymy, że siła tkwi w jedności. Dlatego stworzyliśmy Społeczność, w której możesz zadawać pytania; omawiać różne tematy, udostępniać artykuły i blogować. Poza tym społeczność jest idealnym miejscem do znalezienia pracy na znajomości. Dlatego nie krępuj się zadawać mądrych pytań i udzielać mądrych odpowiedzi. Im aktywniej będziesz się zachowywać i pomagać innym, tym większe szanse, że inny członek stowarzyszenia zaproponuje Ci dołączenie do swojego projektu.

Osiągnąłeś nowy poziom

Poziom 2

Stary poziom 02 - 4

1 Elly, podstawa wszystkiego

- Hej, Amigo. Dzisiaj chcę opowiedzieć, jak zbudowany jest typowy program w Javie . Chodzi o to, że każdy program Java składa się z klas i obiektów . - Już wiem, co to są zajęcia. A czym są przedmioty? - Analogicznie do budowy małego statku, najpierw trzeba zrobić rysunek, a potem oddać go stoczni. Na podstawie tego rysunku zostanie złożony statek. Albo pięć statków. Właściwie tyle, ile chcesz. Na podstawie jednego rysunku buduje się dziesiątki identycznych statków, o to w tym wszystkim chodzi! - Wszystkie rzeczy w programowaniu w Javie są dokładnie takie same. - Programista jest jak inżynier projektujący. A jeśli inżynier projektowy musi tworzyć rysunki, programista Java musi pisać klasy. Następnie na podstawie rysunków wykonywane są części, a na podstawie klas wykonywane są obiekty. - Najpierw piszemy klasy (robimy rysunki), a później w czasie wykonywania programu Wirtualna Maszyna Javy tworzy obiekty korzystając z tych klas. W ten sam sposób buduje się statki. Jest jeden rysunek i wiele statków. Istnieją różne statki, które mają różne nazwy i przewożą różne ładunki. Są jednak bardzo do siebie podobne: wszystkie mają taką samą strukturę i mogą wykonywać te same zadania. - W przypadku statków wszystko jasne. Daj mi jeszcze kilka porównań, aby dokładnie zrozumieć, o co w tym wszystkim chodzi? - Jasne. Na przykład pszczoły… Stary poziom 02 - 5- O nie, chwileczkę, pszczoły przypominają mi coś złego. Pomyśl lepiej o mrowisku. - Mrowisko jest dobrym przykładem interakcji między obiektami. W najprostszym mrowisku występują trzy klasy mrówek: królowa, żołnierze i mrówki robotnice. Istnieje różnica w liczbie mrówek dla każdej klasy. Królowa jest sama w gnieździe; są dziesiątki żołnierzy i setki pracujących mrówek. Możemy więc powiedzieć, że istnieją trzy klasy i setki obiektów. Mrówki komunikują się ze sobą, z tymi samymi mrówkami i mrówkami z innych klas według ścisłych zasad. - To doskonały przykład. W przypadku typowego programu wszystko jest takie samo. Obiekt główny tworzy obiekty wszystkich pozostałych klas. Obiekty zaczynają wchodzić w interakcje ze sobą i „zewnętrznym światem” programu. Zachowanie obiektów jest w nich zakodowane. - Nie do końca rozumiem. Raczej w ogóle nie rozumiesz. - Te dwa wyjaśnienia to różne strony tej samej monety. Prawda leży gdzieś pośrodku. Pierwszy przykład (ten z rysunkiem i statkami) pokazuje związek między klasą a obiektami tej klasy. Podobieństwo jest bardzo bliskie. Drugi przykład (ten z mrowiskiem) pokazuje związek między zapisanymi klasami a obiektami istniejącymi w czasie wykonywania. - Masz na myśli to, że najpierw musimy napisać klasy dla wszystkich obiektów istniejących w programie i dodatkowo opisać ich interakcję? - Tak, ale to prostsze niż się wydaje. W Javie wszystkie rzeczy w czasie wykonywania programu są obiektami, a kiedy piszesz program, powinieneś opisać różne sposoby interakcji między obiektami. Obiekty po prostu wywołują metody nawzajem i przekazują im niezbędne dane. - To nie jest oczywiste, ale prawie jasne. - Ale skąd wiesz, jakie metody wywołać i jakie dane musisz przekazać metodom? - Każda klasa ma swój opis, aby określić, do czego została stworzona. Każda metoda ma również swój opis tego, co robi i jakie dane należy do niej przesłać. Aby korzystać z klasy, musisz ogólnie wiedzieć, co ona robi. Poza tym musisz dokładnie wiedzieć, co robi każda metoda tej klasy. Ale nie musisz wiedzieć, jak to się robi . To jest rodzaj magii. - Humph. Brzmi tak.   - Tutaj, spójrz na kod klasy, który kopiuje plik: Stary poziom 02 - 6- To nie jest takie proste, ale już rozumiem. - Cienki. Do zobaczenia, aligatorze!

2 Risza, Zmienne i typy pierwotne

- Hej ty, wolna siła robocza. - To znaczy, „Cześć, Amigo”. Chcę zapoznać Cię z wewnętrzną strukturą zmiennych. Wiesz już, że każda zmienna ma przypisany fragment pamięci, w którym zmienna przechowuje swoją wartość. - Tak. Powiedziałeś to ostatnim razem. - Cienki. To dobrze, że o tym pamiętasz. Potem będę kontynuował. - zajęcia . Kiedy opisujemy nową klasę w programie, oznacza to, że deklarujemy nowy złożony typ złożony , którego dane będą albo innymi typami złożonymi, albo typami pierwotnymi. Stary poziom 02 - 7- Nadal jest jasne, jak na cud. - Ponieważ duże (złożone) typy składają się z wielu małych (prymitywnych), ich obiekty zajmują dużo pamięci. Więcej niż zwykłe zmienne typu pierwotnego. Czasem dużo więcej. Przypisywanie zmiennych typu złożonego zajmowało dużo czasu i wymagało kopiowania dużych ilości pamięci. Dlatego zmienne typu złożonego przechowują nie sam obiekt, ale zwykłe odwołanie do obiektu (czyli czterobajtowy adres). To wystarczy, aby uzyskać dostęp do danych obiektu. JVM bierze na siebie wszystkie związane z tym trudności. - nie rozumiem. - Omówiliśmy już, że zmienna jest jak pudełko. Aby zapisać w nim 13, możesz napisać liczbę na kartce papieru i włożyć ją do pudełka. - Teraz wyobraź sobie, że musisz przechowywać w pudełku (zmiennym) coś trochę większego. Na przykład pies, samochód lub twój sąsiad Joe. Aby uprościć, możesz zrobić prostą rzecz: umieścić zdjęcie psa zamiast psa, tablicę rejestracyjną samochodu zamiast samochodu i numer telefonu Joego zapisany na kartce papieru zamiast samego Joe. - Teraz bierzemy kartkę papieru i piszemy na niej numer telefonu Joego. To jak odniesienie do obiektu. Jeśli wyciągniemy z pudełka kartkę, na której jest zapisany numer Joego, zrobimy kopie i włożymy kilka pudełek, odniesień do Joe będzie więcej, ale Joe może być tylko jeden. - Zaletą takiego przechowywania danych jest to, żemoże być wiele odniesień i tylko jeden obiekt . - To jest ekscytujące. Swoją drogą, prawie zrozumiałem. Odpowiedz tylko na jeszcze jedno pytanie: co się stanie, jeśli przypiszę zmienną typu złożonego do innej zmiennej typu złożonego? - Wtedy te dwie zmienne będą zawierały ten sam adres. A zatem, jeśli zmienisz dane przechowywane w jednej zmiennej typu złożonego, dane drugiej również zostaną zmienione . Bo wiesz , tak naprawdę jest tylko jeden obiekt, do którego zmienne przechowują odniesienia. Niemniej jednak może istnieć bardzo wiele zmiennych, które przechowują odniesienia do obiektu. - A co jest przechowywane w zmiennych typu złożonego (typ referencyjny/klasowy), gdy nie ma odwołań do obiektów? Czy coś takiego naprawdę może istnieć? - Tak, Amigo. Wyjąłeś mi te słowa z ust. To może być. Jeśli w zmiennej typu referencyjnego (złożonego) nie ma odniesienia do obiektu, przechowuje ona wartość null , specjalną «zerową referencję». W rzeczywistości po prostu przechowuje adres obiektu równy 0. Ale wirtualna maszyna Java nigdy nie tworzy obiektów z zerowym adresem, dlatego zawsze wie, że jeśli zmienna referencyjna ma wartość 0, to nie ma tam żadnego obiektu. Stary poziom 02 - 8Czy dobrze rozumiem? Zmienne dzielą się na dwa typy - prymitywne i referencyjne. Zmienna typu pierwotnego przechowuje wartość, podczas gdy zmienna typu referencyjnego przechowuje odwołanie do obiektu. Typy pierwotne to int, char, boolean i kilka innych. Reszta to zmienne referencyjne, są tworzone przy użyciu klas. - Zgadza się, chłopcze.

3 Elly, Czym są przedmioty

Stary poziom 02 - 9- Oto znowu twój ulubiony nauczyciel. Ponieważ szybko idziemy do przodu, powiem ci, czym są przedmioty i jak sobie z nimi radzić. - Aby utworzyć dowolny obiekt, należy wpisać nazwę typu obiektu (klasę) i przed nim słowo kluczowe new . Powiedzmy, że mamy klasę Cat, a następnie: Stary poziom 02 - 10- Co się stanie, jeśli po prostu utworzysz obiekt i nie przypiszesz go [jego odniesienia] do żadnej zmiennej? - Jeśli to zrobisz, wirtualna maszyna Java utworzy obiekt i natychmiast uzna go za śmieci (obiekt nieużywany). Po chwili usunie ten obiekt podczas wyrzucania elementów bezużytecznych. - Jak mogę zniszczyć przedmiot, jeśli już go nie potrzebuję? - Nie możesz.Gdy tylko nie będzie zmiennej do przechowywania odwołania do obiektu, obiekt zostanie oznaczony jako śmieci, a JVM zniszczy go podczas następnego wyrzucania elementów bezużytecznych. Dopóki istnieje co najmniej jedno odniesienie do obiektu, będzie ono uważane za aktywne i nie zostanie zniszczone. Jeśli chcesz szybko zniszczyć obiekt, ustaw wszystkie jego odwołania na null, czyli przypisz wartość null wszystkim zmiennym, które odnoszą się do tego obiektu. - Rozumiem. Po poprzednich wykładach nie wydaje się to wcale trudne. - Dobra, oto kilka zadań, które pozwolą ci poprawić swoje umiejętności. Są one również dostępne na System.out. Ale później będą trudniejsze. I mógłbyś nam pokazać, z jakiej stali jesteś zrobiony.
Zadania
1 Napisz program, który wyświetli: „Krok po kroku i sprawa załatwiona”.
2 Napisz program, który wyświetli 7 razy: „Dokonywanie rzeczy niemożliwych to swego rodzaju zabawa”.
3 Napisz program, który wyświetla: „Zawsze chcę nauczyć się czegoś pożytecznego”.

4 Risha, Widoczność zmiennych.

- Cześć mój ulubiony uczniu. Teraz opowiem o widoczności zmiennych . - Dlaczego, są też niewidoczne zmienne? - Nie, zmienne są widoczne w miejscach kodu, w których można uzyskać do nich dostęp. Dostęp do niektórych zmiennych można uzyskać z dowolnego miejsca w programie, do innych tylko w ramach ich klasy, a dostęp do niektórych zmiennych można uzyskać tylko w ramach jednej metody. - Na przykład nie możesz odwoływać się do zmiennej przed jej zadeklarowaniem. - Jest jasne. - Oto kilka przykładów: Stary poziom 02 - 111 Zmienna zadeklarowana w metodzie istnieje / jest widoczna od początku deklaracji do końca metody. 2 Zmienna zadeklarowana w bloku kodu istnieje do końca tego bloku kodu. 3 Zmienne – argumenty metody – istnieją w dowolnym miejscu w zakresie metody. 4 Zmienne klasy / obiektów istnieją przez cały czas życia ich obiektu. Specjalne modyfikatory dostępu public i private dodatkowo kontrolują ich widoczność. 5 Statyczne zmienne klasy istnieją w czasie wykonywania programu. Modyfikatory dostępu określają również ich widoczność. - Uwielbiam zdjęcia, wszystko się układa. - To dobrze, Amigo. Zawsze wiedziałem, że jesteś mądrym gościem. - Opowiem Ci również o modyfikatorach dostępu . Nie bój się tak, to nie jest fizyka jądrowa. To są słowa publiczne i prywatne , które widzisz. - Nie boję się, po prostu jest tu zimno. - Jasne. Możesz kontrolować dostęp (widoczność) metod i zmiennych w swojej klasie z innych klas. Dla każdej metody lub zmiennej można określić tylko jeden modyfikator dostępu. 1 Modyfikator public Dostęp do zmiennej, metody lub klasy oznaczonej modyfikatorem public można uzyskać z dowolnego miejsca w programie. To najwyższy stopień otwartości, bez ograniczeń. 2 Modyfikator private Zmienna lub metoda oznaczona modyfikatorem private jest dostępna tylko z poziomu klasy, w której została zadeklarowana. W przypadku wszystkich innych klas oflagowana metoda lub zmienna są niewidoczne, tak jakby nie istniały. Jest to najwyższy stopień zamknięcia (widoczny tylko z tej samej klasy). 3 Domyślny modyfikator Jeśli jakikolwiek modyfikator nie oznacza zmiennej lub metody, jest uważany za domyślny modyfikator. Zmienne lub metody z tym modyfikatorem (czyli bez żadnych) są widoczne dla wszystkich klas pakietu, w którym zostały zadeklarowane. Tylko w tym samym pakiecie. Ten modyfikator jest czasami nazywany pakietem , aby zasugerować, że dostęp do zmiennych i metod jest możliwy dla całego pakietu, którego klasa należy do zakładki Wyjaśnienie: Stary poziom 02 - 12

5 Diego, Zadania tworzenia zbioru zmiennych

- Hej, kolego. W razie potrzeby zachowam dla Ciebie kopię umowy. Ta podstępna tandeta Risha jest w błogiej nieświadomości. Powinieneś był zobaczyć kwoty w moim kontrakcie. Heh heh. - Dobra robota, Diego. Myślę, że uczysz mnie naprawdę przydatnych rzeczy. - Jasne, Amigo. Nie ma zysku bez bólu. Ale wciąż ktoś cierpi ból bez zysku. - Lepiej odwróćmy rękę do nauki. Teraz pokażę ci, jak utworzyć kilka zmiennych na różne sposoby: Stary poziom 02 - 13- ​​Wow, Diego! Jesteś taki mądry. - Heh heh! Dzięki, Amigo. - Myślę, że już przegapiłeś moje zadania. Oto niektóre z nich. Ci ludzie, kosmici nie wiedzą nic o naszym robo-życiu. Kto oprócz mnie cię tego nauczy?
Zadania
1 Napisz program, który wyświetli 3 razy: „Wielu ludzi żyje tylko dlatego, że strzelanie do nich jest nielegalne”.
2 Napisz program, który wyświetla: „Jeśli chcę poznać Twoją opinię, poproszę o wypełnienie niezbędnych formularzy”.
3 Napisz program, który wyświetli 20 razy: „Nigdy nie powiedziałem większości rzeczy, które powiedziałem”.

6 Elly, Przechodząc przez odniesienie. Zmienne referencyjne

- Hej, Amigo, to znowu ja, Elly. Przepraszam, że zawsze to mówię, ale tak się po prostu robi na Ziemi w 31 wieku. Wyjaśnię ci cechy zmiennych referencyjnych i sposób przekazywania argumentów referencyjnych do funkcji (metod). - Jestem gotowy. - Cóż, zmienne referencyjne to zmienne wszystkich typów z wyjątkiem pierwotnych. Te zmienne zawierają tylko adres obiektu (odniesienie do obiektu). - Zmienne typów pierwotnych przechowują wartość i typ, a zmienne klasy przechowują odwołania do obiektów tej samej klasy, dobrze lub null. Czy mam rację? - Absolutnie. - Więc co to jest odniesienie? - Obiekt i jego referencja są ze sobą powiązane, powiedzmy, jak człowiek i jego numer telefonu. Numer telefonu nie jest człowiekiem, ale można go użyć, aby do niego zadzwonić, poprosić go o coś, poprowadzić go lub wydać mu polecenie. Odniesienie służy również do interakcji z obiektem. Wszystkie obiekty wchodzą ze sobą w interakcje poprzez odniesienia. - To tak, jakby ludzie komunikowali się ze sobą przez telefon? - Zgadza się. Kiedy przypisujesz prymitywny obiekt, jego wartość jest kopiowana (duplikowana). Podczas przypisania zmiennej referencyjnej kopiowany jest tylko adres obiektu (numer telefonu), a nie sam obiekt. - OK, rozumiem. - Referencja ma jeszcze jedną zaletę: możesz przekazać referencję do obiektu dowolnej metodzie, a ta metoda będzie mogła modyfikować (zmieniać) nasz obiekt za pomocą referencji, wywołując jej metody i uzyskując dostęp do danych w obiekcie. Stary poziom 02 - 14- Wartości zmiennych a i b są wymieniane wewnątrz metody swap . Kiedy wywołujesz metodę swap , zmienne a & b otrzymują kopie wartości m & n . Dlatego wartości zmiennych m i n pozostają takie same, gdy zmienisz wartości a i b . Widać to wyraźnie w kodzie prawej kolumny. - Szczerze mówiąc, nic z tego nie mam. Czy mogę prosić o jeszcze kilka przykładów? - W przypadku typu referencyjnego można to zrobić: Stary poziom 02 - 15- Zmiennym aib przypisano odniesienia odpowiednio do emmy i alicji, wartości aib zmieniają się w obiektach emma i alicja. - Czyli można deklarować klasy także w innych klasach? Wow! - Co do reszty, to nie jest jasne. - Nie wszystko na raz.

7 Elly, wywołanie funkcji, wartość zwracana

- No to odwróćmy się. Porozmawiamy o tym, jak działa wywołanie metody, a potem spróbuj ponownie rzucić okiem na poprzedni wykład, dobrze? - Umowa! - Cóż, w takim razie opowiem ci o wywołaniu funkcji/metody i zwróconych wartościach. - Polecenia są pogrupowane w funkcje, dzięki czemu można je uruchamiać w jednym bloku, jako jedno złożone polecenie. W tym celu należy wpisać nazwę funkcji (metody) a następnie w nawiasach po nazwie podać wartości i parametry. Stary poziom 02 - 16- W powyższym przykładzie napisaliśmy funkcję wyświetlającą przekazany ciąg 4 razy. Następnie wywołaliśmy funkcję print4 w linii 6. - Jeśli chodzi o wykonanie linii 6, program przeskoczy do linii 9, a zmiennej s zostanie przypisana wartość „Lubię to ruszać, ruszaj”. - Następnie wiersze 11-14 zostaną wykonane, aw końcu funkcja zostanie zakończona i program będzie kontynuowany od wiersza 7. - Gotcha. - Do funkcji można nie tylko przekazać argumenty (parametry), ale także zwrócić wynik (wartość) działania funkcji. Odbywa się to za pomocą słowa kluczowego return. Oto jak to wygląda: Stary poziom 02 - 17- Chyba łapię. To ten sam kod po lewej i po prawej stronie. Po lewej jest to po prostu przedstawione jako oddzielna funkcja. - Funkcja oblicza wartość i przekazuje ją tym, którzy ją wywołali za pomocą polecenia return. Przynajmniej tak myślę. - W zasadzie to prawda. - A jaki jest rodzaj pustki? - Niektóre funkcje po prostu coś robią, ale nie obliczają i nie zwracają żadnych wartości, jak nasza metoda main().Dla tych funkcji utworzono specjalny typ wynikowy void (typ pusty). - Dlaczego możemy nic nie określać, skoro funkcja niczego nie zwraca? - Pomyśl tylko, jak deklarowana jest każda zmienna: typ i nazwa. Funkcja jest deklarowana z typem, nazwą i nawiasami. Nazwa funkcji, po której następują nawiasy, to wywołanie funkcji! - Czyli łatwiej było wymyślić „pusty typ” niż podzielić funkcje na dwie kategorie: zwracające wartość i nie zwracające wartości? - Dokładnie! Szybko myślisz, mój chłopcze. - A jak mogę zwrócić pusty typ? - Nie możesz. Oto jak to działa: kiedy JVM wykonuje zwrotpolecenie, oblicza wartość wyrażenia po prawej stronie słowa return, zapisuje tę wartość w specjalnym obszarze pamięci i natychmiast wychodzi z funkcji . Wykorzystuje wartość zapisaną w wyniku wywołania funkcji w miejscu wywołania funkcji. Możesz to zobaczyć na powyższym przykładzie. - Masz na myśli miejsce, w którym int m = min(a,b) przekształciło się w m = m2 ? - Tak. Po wywołaniu funkcji wszystko działa dalej tak, jakby zamiast funkcji jej wynik był zapisywany w tym samym miejscu. Przeczytaj to zdanie jeszcze raz i spójrz na kod ostatniego przykładu. - To po prostu wydaje się łatwe, ale w rzeczywistości jest trudne. Mam tylko trochę, to wszystko. - Jest w porządku.Za pierwszym razem możesz zrozumieć tylko to, co już wiesz. Im bardziej wchodzisz w nowy dla siebie obszar, tym bardziej jest on niejasny. A wynik będzie jeszcze bardziej niesamowity. Z biegiem czasu wszystko staje się jasne. - Cóż, jeśli tak, to jedziemy dalej.

8 Diego

- Hej, Amigo. Oto kilka zadań dla Ciebie. Teraz możesz zrobić coś więcej niż System.out. Zrób najlepiej, jak potrafisz! Wierzę w Ciebie!
Zadania
1 Minimum dwie liczby
Napisz funkcję, która zwraca co najmniej dwie liczby.
2 Maksymalnie dwie liczby
Napisz funkcję, która zwraca maksymalnie dwie liczby.
3 Minimum trzy liczby
Napisz funkcję, która zwraca co najmniej trzy liczby.
4 Minimum cztery liczby
Napisz funkcję, która zwraca minimum cztery liczby.
Funkcja min(a,b,c,d) musi użyć (wywołać) funkcję min(a, b)
5 Powielanie napisów
Napisz funkcję wyświetlającą trzykrotnie przekazany łańcuch. Każdy ciąg powinien znajdować się w nowej linii.
6 Wyświetlanie tekstu
Napisz funkcję, która wyświetli przekazany ciąg znaków (słowo) trzy razy w tej samej linii.
Słowa muszą być oddzielone spacją i nie muszą łączyć się w jedno.

9 Diego, Pełna nazwa klasy

Stary poziom 02 - 18- Hej, Amigo, chcę ci opowiedzieć o pełnych nazwach klas. - Wiesz już, że zajęcia są w paczkach. Tak więc pełna nazwa klasy to nazwa, która obejmuje wszystkie pakiety oddzielone punktami i nazwę klasy. Przykłady: Stary poziom 02 - 19 - Aby użyć klasy we własnym kodzie, musisz podać jej pełną nazwę. Możesz jednak użyć krótkiej nazwy - tylko nazwy klasy. Aby to zrobić, musisz „zaimportować” tę klasę, określając jej nazwę, dodając słowo import przed deklaracją klasy. Domyślnie importowane są klasy pakietu java.lang (String, Integer,...). Nie musisz ich określać. Przykład: Stary poziom 02 - 20- Przykład użycia krótkich nazw: Stary poziom 02 - 21- Rozumiem. - Cienki.

10 Profesor, Wykład o klasach i przedmiotach

Stary poziom 02 - 22- Hej, Amigo. Mam nadzieję, że zrozumiałeś wszystko, co dziś powiedzieli Ci Elly i Risha. Na wszelki wypadek, tak jak obiecałem, podaję linki do dalszych materiałów: 1 Moje notatki 2 Myślenie w Javie. Ta niesamowita książka, o której już ci mówiłem. Byłoby wspaniale, gdybyś to przeczytał. - Mam nadzieję, że znajdziesz czas, żeby to przejrzeć. - Ekhem. Pewnie, że będę!

11 lipca

- Hej, Amigo! Mam nadzieję, że masz ochotę na ciężki i męczący odpoczynek?

Komentarze
  • Popularne
  • Najnowsze
  • Najstarsze
Musisz się zalogować, aby dodać komentarz
Ta strona nie ma jeszcze żadnych komentarzy