reklama - zainteresowany?

Java. Rusz g - Helion

Java. Rusz g
ebook
Autor: Kathy Sierra, Bert Bates, Trisha Gee
Tytuł oryginału: Head First Java: A Brain-Friendly Guide, 3rd Edition
Tłumaczenie: Piotr Rajca
ISBN: 978-83-283-9985-3
stron: 736, Format: ebook
Data wydania: 2023-05-01
Księgarnia: Helion

Cena książki: 81,95 zł (poprzednio: 146,34 zł)
Oszczędzasz: 44% (-64,39 zł)

Dodaj do koszyka Java. Rusz g

Tagi: Java - Programowanie

Technologie bazuj

Dodaj do koszyka Java. Rusz g

Spis treści

Java. Rusz głową! Wydanie III eBook -- spis treści

Wprowadzenie

  • Dla kogo jest przeznaczona ta książka?
  • Wiemy, co sobie myślisz
  • Metapoznanie - myślenie o myśleniu
  • Oto co zrobiliśmy
  • Oto co możesz zrobić, aby zmusić swój mózg do posłuszeństwa
  • Czego potrzebujesz, aby skorzystać z tej książki?
  • Kilka ostatnich spraw, o których musisz wiedzieć

1. Przełamując zalew początkowych trudności

  • Jak działa Java?
  • Co będziesz robić w Javie?
  • Krótka historia Javy
  • Struktura kodu w Javie
  • Tworzenie klasy z metodą main()
  • Pętle i pętle, i.
  • Rozgałęzienia warunkowe
  • Tworzenie poważnej aplikacji biznesowej
  • Program krasomówczy
  • Ćwiczenia
  • Rozwiązania ćwiczeń

2. Wycieczka do Obiektowa

  • Wojna o fotel
  • Tworzenie pierwszego obiektu
  • Tworzenie i testowanie obiektów Film
  • Szybko! Opuszczamy metodę main()!
  • Uruchamianie zgadywanki
  • Ćwiczenia
  • Rozwiązania ćwiczeń

3. Poznaj swoje zmienne

  • Deklarowanie zmiennej
  • "Proszę podwójną. Albo nie - całkowitą!"
  • Trzymaj się z daleka od tego słowa kluczowego!
  • Kontrolowanie obiektu Pies
  • Odwołanie do obiektu to jedynie inna wartość zmiennej
  • Życie na odśmiecanej stercie
  • Tablica jest jakby tacą z kubkami
  • Tworzymy tablicę obiektów Pies
  • Ćwiczenia
  • Rozwiązania ćwiczeń

4. Jak działają obiekty?

  • Pamiętaj! Klasa opisuje to, co obiekt wie, oraz to, co robi
  • Wielkość ma wpływ na sposób szczekania
  • Do metod można przekazywać informacje
  • Metoda może coś zwrócić
  • Do metody można przekazać więcej niż jedną informację
  • Ciekawe rozwiązania wykorzystujące parametry i wartości wynikowe
  • Hermetyzacja
  • Jak zachowują się obiekty w tablicy?
  • Deklarowanie i inicjalizacja zmiennych instancyjnych
  • Porównywanie zmiennych (typów podstawowych oraz odwołań)
  • Ćwiczenia
  • Rozwiązania ćwiczeń

5. Supermocne metody

  • Napiszmy grę przypominającą okręty, o nazwie "Zatopić startup"
  • Tworzenie klasy
  • Pisanie kodu testowego dla klasy ProstyStartup
  • Metoda sprawdz()
  • Kod przygotowawczy klasy ProstyStartupGra
  • Metoda main() gry
  • Zagrajmy
  • Trochę więcej o pętlach for
  • Rozszerzone pętle for
  • Rzutowanie wartości typów podstawowych
  • Ćwiczenia
  • Rozwiązania ćwiczeń

6. Korzystanie z biblioteki Javy

  • Ostatni rozdział zakończył się w dramatycznych okolicznościach - w programie znaleźliśmy błąd
  • Obudź się i przejrzyj bibliotekę
  • Niektóre możliwości klasy ArrayList
  • Porównanie klasy ArrayList ze zwyczajną tablicą
  • Napiszmy WŁAŚCIWĄ wersję gry "Zatopić startup"
  • Kod przygotowawczy właściwej klasy StartupGraMax
  • Ostateczna wersja klasy Startup
  • Wyrażenia logiczne o bardzo dużych możliwościach
  • Stosowanie biblioteki (Java API)
  • Ćwiczenia
  • Rozwiązania ćwiczeń

7. Wygodniejsze życie w Obiektowie

  • Wojna o fotel raz jeszcze.
  • Zrozumienie dziedziczenia
  • Zaprojektujmy drzewo dziedziczenia dla programu symulacji zwierząt
  • Poszukiwanie dalszych możliwości zastosowania dziedziczenia
  • Relacje JEST oraz MA
  • Jak możesz określić, czy dobrze zaprojektowałeś hierarchię dziedziczenia?
  • Czy korzystanie z dziedziczenia przy projektowaniu klas jest "używaniem", czy "nadużywaniem"?
  • Jak dotrzymać kontraktu - reguły przesłaniania
  • Przeciążanie metody
  • Ćwiczenia
  • Rozwiązania ćwiczeń

8. Poważny polimorfizm

  • Czy projektując przedstawioną obok hierarchię klas, o czymś zapomnieliśmy?
  • Kompilator nie pozwoli utworzyć obiektów klasy abstrakcyjnej
  • Abstrakcyjne kontra konkretne
  • MUSISZ zaimplementować wszystkie metody abstrakcyjne
  • Polimorfizm w działaniu
  • A co z obiektami innych klas? Dlaczego nie stworzyć listy, w której można by zapisać cokolwiek?
  • Kiedy Pies nie zachowuje się jak Pies
  • Rozważmy różne możliwości projektowe
  • Tworzenie i implementowanie interfejsu ZwierzakDomowy
  • Wywoływanie wersji metody zdefiniowanej w klasie bazowej
  • Ćwiczenia
  • Rozwiązania ćwiczeń

9. Życie i śmierć obiektu

  • Stos i sterta. Gdzie są przechowywane dane?
  • Metody są zapisywane na stosie
  • A co ze zmiennymi lokalnymi, które są obiektami?
  • Cud utworzenia obiektu
  • Tworzenie obiektu Kaczka
  • Czy kompilator zawsze tworzy dla nas konstruktor bezargumentowy?
  • Nanoprzegląd. Cztery rzeczy o konstruktorach, które należy zapamiętać
  • Znaczenie konstruktorów klasy bazowej w życiu obiektu
  • Czy dziecko może istnieć przed rodzicami?
  • A co ze zmiennymi referencyjnymi?
  • Nie podoba mi się kierunek, w jakim to wszystko zmierza
  • Ćwiczenia
  • Rozwiązania ćwiczeń

10. Liczby mają znaczenie

  • Metody klasy Math - najlepsze z możliwych odpowiedników metod globalnych
  • Różnice pomiędzy metodami zwyczajnymi a statycznymi
  • Inicjalizacja zmiennych statycznych
  • Metody klasy Math
  • Reprezentowanie wartości typów podstawowych w formie obiektów
  • Automatyczna konwersja działa niemal wszędzie
  • A teraz w przeciwnym kierunku. zamiana liczby na łańcuch znaków
  • Formatowanie liczb
  • Specyfikator formatu
  • Ćwiczenia
  • Rozwiązania ćwiczeń

11. Struktury danych

  • Poznajemy API pakietu java.util, List i Collections
  • Typy ogólne oznaczają większe bezpieczeństwo typów
  • Ponownie odwiedzimy metodę sort()
  • Nowa, poprawiona, porównywalna klasa Piosenka
  • Sortowanie z wykorzystaniem wyłącznie komparatorów
  • Zastosowanie wyrażeń lambda w kodzie aplikacji szafy grającej
  • Wykorzystanie kolekcji HashSet zamiast ArrayList
  • Co MUSIMY wiedzieć o klasie TreeSet.
  • Poznaliśmy już listy i zbiory, teraz poznamy mapy
  • W końcu wracamy do typów ogólnych
  • Ćwiczenia
  • Rozwiązania ćwiczeń

12. Wyrażenia lambda i strumienie: co, a nie jak

  • Powiedz komputerowi, CZEGO chcesz
  • Kiedy pętle for schodzą na złą drogę
  • Prezentacja API strumieni
  • Pobieranie wyników ze strumienia
  • Wytyczne dotyczące stosowania strumieni
  • Witaj, lambdo, nasz (niezbyt) stary przyjacielu
  • Zauważanie interfejsów funkcyjnych
  • Pierwsze wyzwanie Leona: znaleźć wszystkie rockowe utwory
  • Drugie wyzwanie Leona: lista wszystkich gatunków
  • Ćwiczenia
  • Rozwiązania ćwiczeń

13. Ryzykowne zachowanie

  • Stwórzmy program MuzMachina
  • Przede wszystkim potrzebujemy sekwensera
  • Wyjątek jest obiektem. klasy Exception
  • Sterowanie przepływem w blokach try-catch
  • Czy wspominaliśmy, że metoda może zgłaszać więcej niż jeden wyjątek?
  • W przypadku użycia wielu bloków catch należy je uporządkować ze względu na zakres - od najmniejszego do największego
  • Zrezygnowanie z obsługi wyjątku (poprzez jego zadeklarowanie) jedynie odsuwa w czasie to, co nieuniknione
  • Kod od kuchni
  • Wersja 1. Twój pierwszy odtwarzacz muzyki
  • Wersja 2. Eksperymenty muzyczne z wykorzystaniem argumentów przekazywanych z wiersza poleceń
  • Ćwiczenia
  • Rozwiązania ćwiczeń

14. Historia bardzo graficzna

  • Wszystko zaczyna się od okna
  • Przechwytywanie zdarzeń generowanych przez działania użytkownika
  • Odbiorcy, źródła i zdarzenia
  • Stwórz własny komponent umożliwiający rysowanie
  • Fajne operacje, jakie można realizować w metodzie paintComponent()
  • Układy GUI - wyświetlanie w ramce więcej niż jednego komponentu
  • Klasy wewnętrzne spieszą z pomocą!
  • Wyrażenia lambda spieszą z pomocą (ponownie)!
  • Wykorzystanie klas wewnętrznych do tworzenia animacji
  • Prostszy sposób tworzenia komunikatów-zdarzeń
  • Ćwiczenia
  • Rozwiązania ćwiczeń

15. Popracuj nad Swingiem

  • Komponenty biblioteki Swing
  • Menedżery układu
  • Wielka trójka menedżerów układu: BorderLayout, FlowLayout oraz BoxLayout
  • Zabawy z komponentami biblioteki Swing
  • Kod od kuchni
  • Tworzenie aplikacji MuzMachina
  • Ćwiczenia
  • Rozwiązania ćwiczeń

16. Zapisywanie obiektów (i tekstu)

  • Odczytywanie taktów
  • Zapisywanie serializowanego obiektu do pliku
  • Jeśli chcesz, aby klasa zapewniała możliwość serializacji, zaimplementuj w niej interfejs Serializable
  • Deserializacja - odtwarzanie obiektów
  • Identyfikator wersji - wielki problem serializacji
  • Odczyt zawartości pliku tekstowego
  • Kwiz - gra (zarys kodu)
  • Typy Path, Paths i Files (zabawy z katalogami)
  • Finalnie, bliższe spojrzenie na finally
  • Zapisywanie kompozycji
  • Ćwiczenia
  • Rozwiązania ćwiczeń

17. Nawiąż połączenie

  • Nawiązywanie połączenia, wysyłanie i odbieranie danych
  • Program CodziennePoradyKlient
  • Tworzenie prostej aplikacji serwera
  • Możliwość stosowania wielu wątków w Javie zapewnia jedna klasa - Thread
  • Trzy stany nowego wątku
  • Usypianie wątku
  • Tworzenie i uruchamianie dwóch (lub większej liczby!) wątków
  • Koniec pracy w puli wątków
  • Nowa i poprawiona wersja programu ProstyKlientPogawedek
  • Ćwiczenia
  • Rozwiązania ćwiczeń

18. Rozwiązywanie problemów współbieżności

  • Problem Moniki i Roberta w formie kodu
  • Stosowanie blokady obiektu
  • Przerażający problem "utraconej modyfikacji"
  • Zadeklaruj metodę inkrementuj() jako metodę atomową. Synchronizuj ją!
  • Wzajemna blokada, mroczna strona wątków
  • Operacje CAS z użyciem zmiennych atomowych
  • Stosowanie niezmiennych obiektów
  • Więcej problemów ze współużytkowanymi danymi
  • Stosowanie struktur danych bezpiecznych pod względem wielowątkowym
  • Ćwiczenia
  • Rozwiązania ćwiczeń

Dodatek A. Ostatnie doprawianie kodu

  • Ostateczna wersja programu MuzMachina
  • Ostateczna wersja serwera aplikacji MuzMachina

Dodatek B. Jedenaście najważniejszych tematów, które nie zmieściły się w głównej części książki

  • Nr 11. JShell (Java REPL)
  • Nr 10. Pakiety
  • Nr 9. Niezmienność w łańcuchach i klasach opakowujących
  • Nr 8. Poziomy i modyfikatory dostępu (czyli kto co widzi)
  • Nr 7. Zmienna lista argumentów
  • Nr 6. Adnotacje
  • Nr 5. Lambdy i mapy
  • Nr 4. Strumienie równoległe
  • Nr 3. Wyliczenia (nazywane także typami wyliczeniowymi)
  • Nr 2. Wnioskowanie typów zmiennych lokalnych (słowo kluczowe var)
  • Nr 1. Rekordy

Skorowidz

Dodaj do koszyka Java. Rusz g

Code, Publish & WebDesing by CATALIST.com.pl



(c) 2005-2024 CATALIST agencja interaktywna, znaki firmowe należą do wydawnictwa Helion S.A.