Java_1_5_Tiger_Zapiski_programisty_jatinp.pdf

(332 KB) Pobierz
IDZ DO
PRZYK£ADOW Y ROZDZIA£
Java 1.5 Tiger.
SPIS TREŒCI
Zapiski programisty
KATALOG KSI¥¯EK
Autorzy: Brett McLaughlin, David Flanagan
T³umaczenie: Jaromir Senczyk
ISBN: 83-246-0048-5
Format: B5, stron: 224
KATALOG ONLINE
ZAMÓW DRUKOWANY KATALOG
TWÓJ KOSZYK
DODAJ DO KOSZYKA
Zobacz, co ma do zaoferowania najnowsza wersja Javy
• Zdefiniuj w³asne klasy generyczne
• Zastosuj w programach nowe typy danych
• Poznaj nowe mechanizmy obs³ugi wspó³bie¿noœci
Najnowsza wersja jêzyka i œrodowiska Java, nosz¹ca nazwê Tiger, to nie aktualizacja,
ale prawie nowy jêzyk programowania. Wprowadzono do niej ponad sto poprawek,
zmian i udoskonaleñ oraz nowe biblioteki i interfejsy programistyczne. Java 1.5 Tiger
oferuje programistom dziesi¹tki nowych mo¿liwoœci. Nowa specyfikacja jêzyka jest
ogromnym tomiskiem, którego lektura znu¿y nawet najwiêkszego fanatyka Javy.
Kontakt z najnowszym wcieleniem tego popularnego jêzyka programowania najlepiej
zacz¹æ od poznania tego, co faktycznie jest w nim nowe.
„Java 1.5 Tiger. Notatnik programisty” to ksi¹¿ka, zawieraj¹ca notatki prawdziwych
fachowców, którzy analizowali now¹ wersjê Javy jeszcze przed jej publiczn¹
prezentacj¹. Przedstawia wszystkie nowoœci Javy 1.5 zilustrowane ponad
piêædziesiêcioma przyk³adami kodu Ÿród³owego. Czytaj¹c j¹, poznasz zasady
stosowania generycznoœci, zrozumiesz dzia³anie mechanizmów automatycznego
opakowywania i rozpakowywania, nauczysz siê korzystaæ z nowych sposobów
formatowania tekstów i opanujesz pos³ugiwanie siê typami wyliczeniowymi
i adnotacjami.
• Generycznoœæ i typy parametryczne
• Tworzenie i stosowanie typów wyliczeniowych
• Automatyczne opakowywanie i rozpakowywanie
• Wykorzystywanie list argumentów o zmiennej d³ugoœci
• Instrukcja for/in
• Obs³uga i synchronizacja w¹tków
Poznaj i ujarzmij si³ê „tygrysa”
CENNIK I INFORMACJE
ZAMÓW INFORMACJE
ONOWOŒCIACH
ZAMÓW CENNIK
CZYTELNIA
FRAGMENTY KSI¥¯EK ONLINE
Wydawnictwo Helion
ul. Chopina 6
44-100 Gliwice
tel. (32)230-98-63
e-mail: helion@helion.pl
1098263678.307.png 1098263678.318.png 1098263678.329.png 1098263678.340.png 1098263678.001.png 1098263678.011.png 1098263678.022.png 1098263678.033.png 1098263678.044.png 1098263678.055.png 1098263678.066.png 1098263678.077.png 1098263678.088.png 1098263678.099.png 1098263678.109.png 1098263678.120.png 1098263678.131.png 1098263678.142.png
 
Spis treści
Seria „Zapiski programisty” .................................................................. 7
Wstęp .................................................................................................. 13
Rozdział 1. Co nowego? ....................................................................... 21
Tablice ................................................................................................ 22
Kolejki ................................................................................................. 25
Kolejki uporządkowane i komparatory ................................................ 28
Przesłanianie typów zwracanych ........................................................ 30
Wykorzystanie zalet Unicode .............................................................. 32
Klasa StringBuilder ............................................................................. 34
Rozdział 2. Generyczność .................................................................... 37
Stosowanie list bezpiecznych typologicznie ......................................... 38
Stosowanie map bezpiecznych typologicznie ....................................... 41
Przeglądanie typów parametrycznych ................................................ 42
Akceptowanie typów parametrycznych jako argumentów .................. 45
Zwracanie typów parametrycznych .................................................... 46
Stosowanie typów parametrycznych jako parametrów typu ............... 47
Ostrzeżenia lint ................................................................................... 48
Generyczność i konwersje typów ......................................................... 49
Stosowanie wzorców typów ................................................................ 53
3
1098263678.163.png 1098263678.174.png 1098263678.185.png 1098263678.195.png 1098263678.206.png 1098263678.217.png 1098263678.228.png 1098263678.239.png 1098263678.250.png 1098263678.261.png 1098263678.272.png 1098263678.283.png 1098263678.284.png 1098263678.285.png 1098263678.286.png 1098263678.287.png 1098263678.288.png 1098263678.289.png 1098263678.290.png 1098263678.291.png 1098263678.292.png 1098263678.293.png 1098263678.294.png 1098263678.295.png 1098263678.296.png 1098263678.297.png 1098263678.298.png 1098263678.299.png 1098263678.300.png 1098263678.301.png 1098263678.302.png 1098263678.303.png 1098263678.304.png 1098263678.305.png 1098263678.306.png 1098263678.308.png 1098263678.309.png 1098263678.310.png 1098263678.311.png 1098263678.312.png 1098263678.313.png 1098263678.314.png 1098263678.315.png 1098263678.316.png 1098263678.317.png 1098263678.319.png 1098263678.320.png 1098263678.321.png 1098263678.322.png 1098263678.323.png 1098263678.324.png 1098263678.325.png 1098263678.326.png 1098263678.327.png 1098263678.328.png 1098263678.330.png 1098263678.331.png 1098263678.332.png 1098263678.333.png 1098263678.334.png 1098263678.335.png 1098263678.336.png 1098263678.337.png 1098263678.338.png 1098263678.339.png 1098263678.341.png 1098263678.342.png 1098263678.343.png 1098263678.344.png 1098263678.345.png 1098263678.346.png 1098263678.347.png 1098263678.348.png 1098263678.349.png 1098263678.350.png 1098263678.002.png 1098263678.003.png 1098263678.004.png 1098263678.005.png 1098263678.006.png 1098263678.007.png 1098263678.008.png 1098263678.009.png
 
Tworzenie typów generycznych ..........................................................55
Ograniczanie parametrów typu ............................................................56
Rozdział 3. Typy wyliczeniowe ............................................................. 59
Tworzenie typu wyliczeniowego ..........................................................60
Typy wyliczeniowe rozwijane w miejscu deklaracji ............................66
Przeglądanie typów wyliczeniowych ...................................................67
Typy wyliczeniowe w instrukcjach wyboru .........................................68
Mapy typów wyliczeniowych ...............................................................73
Zbiory typów wyliczeniowych .............................................................75
Dodawanie metod do typów wyliczeniowych .......................................78
Implementacja interfejsów i typy wyliczeniowe ..................................82
Ciała klas specyficzne dla poszczególnych wartości ............................83
Samodzielne definiowanie typów wyliczeniowych ...............................86
Rozszerzanie typu wyliczeniowego .....................................................87
Rozdział 4. Automatyczne opakowywanie i rozpakowywanie .............. 89
Przekształcanie wartości typów podstawowych
w obiekty typów opakowujących .......................................................90
Przekształcanie obiektów typów opakowujących
w wartości typów podstawowych ......................................................92
Operacje zwiększania i zmniejszania dla typów opakowujących .........93
Boolean i boolean .................................................................................94
Wyrażenia warunkowe i rozpakowywanie ..........................................95
Instrukcje sterujące i rozpakowywanie ................................................97
Wybór metody przeciążonej ................................................................98
Rozdział 5. Listy argumentów o zmiennej długości ............................ 101
Tworzenie list argumentów o zmiennej długości ...............................103
Przeglądanie list argumentów o zmiennej długości ...........................106
Listy argumentów o zerowej długości ................................................108
Obiekty jako argumenty zamiast typów podstawowych .....................110
Zapobieganie automatycznej konwersji tablic ....................................112
4
Spis treści
1098263678.010.png 1098263678.012.png 1098263678.013.png 1098263678.014.png 1098263678.015.png 1098263678.016.png 1098263678.017.png 1098263678.018.png 1098263678.019.png 1098263678.020.png 1098263678.021.png 1098263678.023.png 1098263678.024.png 1098263678.025.png 1098263678.026.png 1098263678.027.png 1098263678.028.png 1098263678.029.png 1098263678.030.png 1098263678.031.png 1098263678.032.png 1098263678.034.png 1098263678.035.png 1098263678.036.png 1098263678.037.png 1098263678.038.png 1098263678.039.png 1098263678.040.png 1098263678.041.png 1098263678.042.png 1098263678.043.png 1098263678.045.png 1098263678.046.png 1098263678.047.png 1098263678.048.png 1098263678.049.png 1098263678.050.png 1098263678.051.png 1098263678.052.png 1098263678.053.png 1098263678.054.png 1098263678.056.png 1098263678.057.png 1098263678.058.png 1098263678.059.png 1098263678.060.png 1098263678.061.png 1098263678.062.png 1098263678.063.png 1098263678.064.png 1098263678.065.png 1098263678.067.png 1098263678.068.png 1098263678.069.png 1098263678.070.png 1098263678.071.png 1098263678.072.png 1098263678.073.png 1098263678.074.png 1098263678.075.png 1098263678.076.png 1098263678.078.png 1098263678.079.png 1098263678.080.png 1098263678.081.png 1098263678.082.png 1098263678.083.png 1098263678.084.png 1098263678.085.png 1098263678.086.png 1098263678.087.png 1098263678.089.png 1098263678.090.png 1098263678.091.png 1098263678.092.png 1098263678.093.png 1098263678.094.png 1098263678.095.png 1098263678.096.png 1098263678.097.png 1098263678.098.png 1098263678.100.png 1098263678.101.png
 
Rozdział 6. Adnotacje ........................................................................ 115
Stosowanie standardowych typów adnotacji ..................................... 116
Adnotowanie przesłaniania metody .................................................. 119
Adnotowanie przestarzałej metody ................................................... 121
Wyłączanie ostrzeżeń ....................................................................... 123
Tworzenie własnych typów adnotacji ................................................ 125
Adnotowanie adnotacji ...................................................................... 128
Definiowanie elementu docelowego dla typu adnotacji ...................... 129
Zachowywanie typu adnotacji ........................................................... 130
Dokumentowanie typów adnotacji ..................................................... 131
Konfigurowanie dziedziczenia adnotacji ............................................ 134
Refleksje i adnotacje .......................................................................... 137
Rozdział 7. Instrukcja for/in .............................................................. 143
Pozbywanie się iteratorów ................................................................ 144
Przeglądanie tablic ............................................................................ 147
Przeglądanie kolekcji ........................................................................ 148
Zapobieganie niepotrzebnemu rzutowaniu ........................................ 150
Adaptacja klas do pracy z pętlą for/in ............................................... 152
Określanie pozycji na liście i wartości zmiennej ............................... 157
Usuwanie elementów listy w pętli for/in ........................................... 158
Rozdział 8. Import składowych statycznych ...................................... 161
Importowanie składowych statycznych ............................................. 162
Stosowanie wzorców podczas importowania ..................................... 164
Importowanie wartości typów wyliczeniowych ................................. 165
Importowanie wielu składowych o tej samej nazwie ......................... 167
Przesłanianie importu składowych statycznych ................................ 169
Rozdział 9. Formatowanie ................................................................. 171
Tworzenie instancji klasy Formatter ................................................. 171
Formatowanie danych wyjściowych ................................................. 172
Spis treści
5
1098263678.102.png 1098263678.103.png 1098263678.104.png 1098263678.105.png 1098263678.106.png 1098263678.107.png 1098263678.108.png 1098263678.110.png 1098263678.111.png 1098263678.112.png 1098263678.113.png 1098263678.114.png 1098263678.115.png 1098263678.116.png 1098263678.117.png 1098263678.118.png 1098263678.119.png 1098263678.121.png 1098263678.122.png 1098263678.123.png 1098263678.124.png 1098263678.125.png 1098263678.126.png 1098263678.127.png 1098263678.128.png 1098263678.129.png 1098263678.130.png 1098263678.132.png 1098263678.133.png 1098263678.134.png 1098263678.135.png 1098263678.136.png 1098263678.137.png 1098263678.138.png 1098263678.139.png 1098263678.140.png 1098263678.141.png 1098263678.143.png 1098263678.144.png 1098263678.145.png 1098263678.146.png 1098263678.147.png 1098263678.148.png 1098263678.149.png 1098263678.150.png 1098263678.151.png 1098263678.152.png 1098263678.153.png 1098263678.154.png 1098263678.155.png 1098263678.156.png 1098263678.157.png 1098263678.158.png 1098263678.159.png 1098263678.160.png 1098263678.161.png 1098263678.162.png 1098263678.164.png 1098263678.165.png 1098263678.166.png 1098263678.167.png 1098263678.168.png 1098263678.169.png 1098263678.170.png 1098263678.171.png 1098263678.172.png 1098263678.173.png 1098263678.175.png 1098263678.176.png 1098263678.177.png 1098263678.178.png 1098263678.179.png 1098263678.180.png 1098263678.181.png 1098263678.182.png 1098263678.183.png 1098263678.184.png 1098263678.186.png 1098263678.187.png 1098263678.188.png 1098263678.189.png 1098263678.190.png 1098263678.191.png
 
Stosowanie metody format() ..............................................................178
Stosowanie metody printf() ................................................................180
Rozdział 10. Wątki ............................................................................. 181
Obsługa wyjątków .............................................................................182
Kolekcje i wątki .................................................................................186
Stosowanie kolejek blokujących .........................................................189
Określanie limitów czasu dla blokowania ..........................................193
Separacja logiki wątku od logiki wykonania ......................................195
Stosowanie interfejsu ExecutorService ..............................................197
Stosowanie obiektów Callable ............................................................199
Wykonywanie zadań bez użycia interfejsu ExecutorService .............201
Planowanie zadań .............................................................................202
Zaawansowana synchronizacja ........................................................205
Typy atomowe ...................................................................................207
Blokowanie a synchronizacja ............................................................209
Skorowidz .......................................................................................... 215
6
Spis treści
1098263678.192.png 1098263678.193.png 1098263678.194.png 1098263678.196.png 1098263678.197.png 1098263678.198.png 1098263678.199.png 1098263678.200.png 1098263678.201.png 1098263678.202.png 1098263678.203.png 1098263678.204.png 1098263678.205.png 1098263678.207.png 1098263678.208.png 1098263678.209.png 1098263678.210.png 1098263678.211.png 1098263678.212.png 1098263678.213.png 1098263678.214.png 1098263678.215.png 1098263678.216.png 1098263678.218.png 1098263678.219.png 1098263678.220.png 1098263678.221.png 1098263678.222.png 1098263678.223.png 1098263678.224.png 1098263678.225.png 1098263678.226.png 1098263678.227.png 1098263678.229.png 1098263678.230.png 1098263678.231.png 1098263678.232.png 1098263678.233.png 1098263678.234.png 1098263678.235.png 1098263678.236.png 1098263678.237.png 1098263678.238.png 1098263678.240.png 1098263678.241.png 1098263678.242.png 1098263678.243.png 1098263678.244.png 1098263678.245.png 1098263678.246.png 1098263678.247.png 1098263678.248.png 1098263678.249.png 1098263678.251.png 1098263678.252.png 1098263678.253.png 1098263678.254.png 1098263678.255.png 1098263678.256.png 1098263678.257.png 1098263678.258.png 1098263678.259.png 1098263678.260.png 1098263678.262.png 1098263678.263.png 1098263678.264.png 1098263678.265.png 1098263678.266.png 1098263678.267.png 1098263678.268.png 1098263678.269.png 1098263678.270.png 1098263678.271.png 1098263678.273.png 1098263678.274.png 1098263678.275.png 1098263678.276.png 1098263678.277.png 1098263678.278.png 1098263678.279.png 1098263678.280.png 1098263678.281.png 1098263678.282.png
 
Zgłoś jeśli naruszono regulamin