JAVA. Programowanie obiektowe w praktyce - Helion
ISBN: 978-83-7814-746-6
stron: 200, Format: ebook
Data wydania: 2020-09-18
Księgarnia: Helion
Cena książki: 22,61 zł (poprzednio: 31,85 zł)
Oszczędzasz: 29% (-9,24 zł)
W podręczniku przedstawiono paradygmaty mające wpływ na sposób konstrukcji kodu źródłowego, czyli model zorientowany na procesy oraz kod działający na danych. Szczegółowo opisano mechanizmy zapewniające implementację modelu obiektowego – hermetyzację, dziedziczenie i polimorfizm. Przedstawiono dwa najważniejsze atrybuty Javy – przenośność i bezpieczeństwo. Wyjaśniono podstawowe cechy programowania dotyczące operacji arytmetycznych i logicznych oraz funkcji sterujących. Autorzy skoncentrowali się przede wszystkim na cechach obiektowości języka, takich jak: klasy, interfejsy, obsługa wyjątków, operacje wejścia-wyjścia ora z aplety i aplikacje. Podano także przykłady kodu w odniesieniu do aplikacji stosowanych w rozwiązniach przemysłowych i przedstawiono wyniki badań wydajności i elementów bezpiecznej konstrukcji kodu źródłowego Javy.
Osoby które kupowały "JAVA. Programowanie obiektowe w praktyce", wybierały także:
- Wprowadzenie do Javy. Programowanie i struktury danych. Wydanie XII 193,23 zł, (59,90 zł -69%)
- Spring i Spring Boot. Kurs video. Testowanie aplikacji i bezpiecze 129,00 zł, (51,60 zł -60%)
- Metoda dziel i zwyci 89,00 zł, (35,60 zł -60%)
- JavaFX. Kurs video. Wzorce oraz typy generyczne 79,00 zł, (31,60 zł -60%)
- Platforma Xamarin. Kurs video. Poziom drugi. Zaawansowane techniki tworzenia aplikacji cross-platform 99,00 zł, (39,60 zł -60%)
Spis treści
JAVA. Programowanie obiektowe w praktyce eBook -- spis treści
Przedmowa 9
1. PODSTAWY JĘZYKA JAVA 11
1.1. Ewolucja języka programowania 11
1.2. Problemy z funkcjonowaniem Internetu 12
1.3. Maszyna wirtualna Javy 13
1.4. Podstawowe cechy Javy 13
2. OPERACJE ARYTMETYCZNE I LOGICZNE 15
2.1. Zmienne jako konstrukcje programistyczne 15
2.2. Operatory arytmetyczne 17
2.3. Operatory bitowe 18
2.4. Operatory logiczne 19
2.5. Operatory przypisania Javy 20
2.6. Operatory relacji (porównywania) 21
2.7. Priorytety operatorów 22
2.8. Badania wydajności 22
3. INSTRUKCJE STERUJĄCE 30
3.1. Instrukcje wyboru 30
3.2. Instrukcje iteracyjne 33
3.3. Instrukcje skoku 34
3.4. Badania wydajności 36
4. PODSTAWY PROGRAMOWANIA OBIEKTOWEGO 40
4.1. Obiektowość 40
4.2. Hermetyzacja 42
4.3. Dziedziczenie 43
4.4. Polimorfizm 43
5. KLASY 45
5.1. Wprowadzenie 45
5.2. Klasy 45
5.3. Metody 49
5.4. Klasy i metody abstrakcyjne 51
5.5. Konstruktory 52
5.6. Metoda finalize 54
6. DZIEDZICZENIE 55
6.1. Idea dziedziczenia 55
6.2. Konstruktory klasy bazowej i potomnej 56
6.3. Kontrola dostępu 58
6.4. Przeciążanie i przesłanie metod 60
6.5. Składowe statyczne 61
6.6. Klasy i składowe finalne 62
6.7. Badania wydajności metod finalnych 64
7. AUTOMATYCZNE OPAKOWYWANIE 67
7.1. Zasady ogólne 67
7.2. Klasa Number 68
7.3. Opakowanie dla liczb zmiennoprzecinkowych 68
7.4. Opakowanie dla typów całkowitoliczbowych 70
7.5. Opakowania klasy Character 70
7.6. Opakowywanie automatyczne 71
7.7. Badania wydajności 74
8. OBSŁUGA WYJĄTKÓW76
8.1. Zasady ogólne 76
8.2. Własna obsługa wyjątków 78
8.3. Nowe cechy wyjątków 79
8.4. Badania wydajności automatycznego zarządzania zasobami 80
9. TABLICE 84
9.1. Zasady ogólne 84
9.2. Tablice jednowymiarowe 84
9.3. Tablice wielowymiarowe 87
9.4. Zarządzanie pamięcią 89
9.5. Operacje na tablicach 91
9.6. Badania wydajności operacji na tablicach 92
10. POLIMORFIZM 94
10.1. Polimorfizm dynamiczny 94
10.2. Konwersje typów prostych 94
10.3. Rzutowanie typów obiektowych 96
11. INTERFEJSY 99
11.1. Klasy abstrakcyjne 99
11.2. Budowanie interfejsów 99
12. OBSŁUGA ŁAŃCUCHÓW 102
12.1. Zasady ogólne 102
12.2. Operacje na łańcuchach 102
12.3. Klasy StringBuffer i StringBuilder 104
12.4. Badania wydajności 105
13. MODEL WIELOWĄTKOWOŚCI 113
13.1. Zasady ogólne 113
13.2. Wielowątkowość 113
13.3. Model wątków 114
13.4. Priorytety 114
3.5. Synchronizacja 115
13.6. Wątek główny 115
13.7. Komunikacja międzywątkowa 117
13.8. Uzyskiwanie stanu wątku 118
13.9. Badania wydajności 119
14. KOLEKCJE 120
14.1. Zasady ogólne 120
14.2. Typy sparametryzowane 120
14.3. Mechanizmy kolekcji 121
14.4. Interfejsy 122
14.5. Klasy kolekcji 123
14.6. Klasy ArrayList i Enumset 124
14.7. Badania wydajności kolekcji 124
15. SYSTEMY WEJŚCIA-WYJŚCIA 129
15.1. Zasady ogólne 129
15.2. Strumienie bajtów 129
15.3. Strumienie filtrowane 131
15.4. Strumienie buforowane 131
15.5. Strumienie znaków 133
15.6. Obsługa danych wyjściowych 134
15.7. Badania wydajności operacji strumieniowych 135
16. PROGRAMOWANIE RÓWNOLEGŁE 143
16.1. Zasady ogólne 143
16.2. Framework Fork/Join 143
16.3. Strategia „Dziel i zwyciężaj” 145
16.4. Poziom równoległości 145
16.5. Badania wydajności 146
17. APLETY I APLIKACJE 150
17.1. Biblioteki 150
17.2. Aplety 152
17.3. Aplikacje 155
18. ADNOTACJE 163
18.1. Zasady tworzenia adnotacji 163
18.2. Adnotacje znacznikowe 164
18.3. Adnotacje jednoelementowe164
18.4. Adnotacje wbudowane 164
18.5. Zasady stosowania adnotacji 165
19. PRAKTYCZNE ZASTOSOWANIA166
19.1. Sterowanie sprężarką 166
19.2. Sygnalizacja świetlna 167
19.3. Koszt cyklu życia (LCC) silników elektrycznych 167
19.4. Inwestycja 168
19.5. Kredyt 168
20. PODSUMOWANIE 170
Bibliografia 171
Załącznik A – Przykłady programów w praktyce 172
A.1. Sterowanie sprężarką 172
A.2. Sygnalizacja świetlna 175
A.3. Koszt cyklu życia (LCC) silników elektrycznych 178
A.4. Inwestycja 183
A.5. Kredyt 187
Załącznik B – Pomiary wydajności kodu źródłowego 192
B.1. Operacje arytmetyczne i logiczne 192
B.2. Instrukcje sterujące 194
B.3. Metody finalne 195
B.4. Automatyczne opakowywanie 195
B.5. Automatyczne zarządzanie zasobami 195
B.6. Operacje na tablicach 196
B.7. Obsługa łańcuchów 196
B.8. Model wielowątkowości 198
B.9. Kolekcje 198
B.10. Strumienie 199
B.11. Programowanie równoległe 200