Π§ΠΈΡ‚Π°ΠΉΡ‚Π΅ ΠΊΠ½ΠΈΠ³ΠΈ ΠΎΠ½Π»Π°ΠΉΠ½ Π½Π° Bookidrom.ru! БСсплатныС ΠΊΠ½ΠΈΠ³ΠΈ Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΊΠ»ΠΈΠΊΠ΅

Π§ΠΈΡ‚Π°Ρ‚ΡŒ ΠΎΠ½Π»Π°ΠΉΠ½ «Ѐилософия Java3Β». Π‘Ρ‚Ρ€Π°Π½ΠΈΡ†Π° 1

Автор Π‘Ρ€ΡŽΡ ЭккСль

Π‘Π˜Π‘Π›Π˜ΠžΠ’Π•ΠšΠ ΠŸΠ ΠžΠ“Π ΠΠœΠœΠ˜Π‘Π’Π

Π‘Ρ€ΡŽΡ ЭккСль

4-Π΅ ΠΈΠ·Π΄Π°Π½ΠΈΠ΅

{^ΠŸΠŸΠ’Π•Π 

Москва - Π‘Π°Π½ΠΊΡ‚-ΠŸΠ΅Ρ‚Π΅Ρ€Π±ΡƒΡ€Π³ - НиТний Новгород - Π’ΠΎΡ€ΠΎΠ½Π΅ΠΆ Ростов-Π½Π°-Π”ΠΎΠ½Ρƒ - Π•ΠΊΠ°Ρ‚Π΅Ρ€ΠΈΠ½Π±ΡƒΡ€Π³ - Π‘Π°ΠΌΠ°Ρ€Π° - Новосибирск КиСв - Π₯Π°Ρ€ΡŒΠΊΠΎΠ² - Минск

2009

Π‘Π‘Πš 32.973 2-018.1

Π£Π”Πš 004.3

Π­38

ЭккСль Π‘.

Π­38 Ѐилософия Java. Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° программиста. 4-Π΅ ΠΈΠ·Π΄. β€” БПб.: ΠŸΠΈΡ‚Π΅Ρ€, 2009. β€” 640 Π΅.: ΠΈΠ». β€” (БСрия Β«Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° программиста»).

ISBN 978-5-388-00003-3

Java нСльзя ΠΏΠΎΠ½ΡΡ‚ΡŒ, взглянув Π½Π° Π½Π΅Π³ΠΎ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΊΠ°ΠΊ Π½Π° ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΡŽ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Ρ…Π°Ρ€Π°ΠΊΡŽΡ€ΠΈΠ΅ΡˆΠΊ, - Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΠΎΠ½ΡΡ‚ΡŒ Π·Π°Π΄Π°Ρ‡ΠΈ этого языка ΠΊΠ°ΠΊ частныС Π·Π°Π΄Π°Ρ‡ΠΈ программирования Π² Ρ†Π΅Π»ΠΎΠΌ. r3ia ΠΊΠ½ΠΈΠ³Π° β€” ΠΎ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ°Ρ… программирования: ΠΏΠΎΡ‡Π΅ΠΌΡƒ ΠΎΠ½ΠΈ стали ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ°ΠΌΠΈ ΠΈ ΠΊΠ°ΠΊΠΎΠΉ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ Java Π² ΠΈΡ… Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΈ. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ обсуТдаСмыС Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΉ Π³Π»Π°Π²Π΅ Ρ‡Π΅Ρ€Ρ‚Ρ‹ языка Π½Π΅Ρ€Π°Π·Ρ€Ρ‹Π²Π½ΠΎ связаны с Ρ‚Π΅ΠΌ, ΠΊΠ°ΠΊ ΠΎΠ½ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Ρ… Π·Π°Π΄Π°Ρ‡.

Π­Ρ‚Π° ΠΊΠ½ΠΈΠ³Π°, Π²Ρ‹Π΄Π΅Ρ€ΠΆΠ°Π²ΡˆΠ°Ρ Π² ΠΎΡ€ΠΈΠ³ΠΈΠ½Π°Π»Π΅ Π½Π΅ ΠΎΠ΄Π½ΠΎ ΠΏΠ΅Ρ€Π΅ΠΈΠ·Π΄Π°Π½ΠΈΠ΅, благодаря Π³Π»ΡƒΠ±ΠΎΠΊΠΎΠΌΡƒ ΠΈ поистинС философскому излоТСнию тонкостСй языка считаСтся ΠΎΠ΄Π½ΠΈΠΌ ΠΈΠ· Π»ΡƒΡ‡ΡˆΠΈΡ… пособий для ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΡƒΡŽΡ‰ΠΈΡ… Π½Π° Java.

Π‘Π‘Πš 32.973.2-018.1 Π£Π”Πš 004.3

ΠŸΡ€Π°Π²Π° Π½Π° ΠΈΠ·Π΄Π°Π½ΠΈΠ΅ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Ρ‹ ΠΏΠΎ соглашСнию с Prentice Hall PTR.

ВсС ΠΏΡ€Π°Π²Π° Π·Π°Ρ‰ΠΈΡ‰Π΅Π½Ρ‹. Никакая Ρ‡Π°ΡΡ‚ΡŒ Π΄Π°Π½Π½ΠΎΠΉ ΠΊΠ½ΠΈΠ³ΠΈ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ воспроизвСдСна Π² ΠΊΠ°ΠΊΠΎΠΉ Π±Ρ‹ Ρ‚ΠΎ Π½ΠΈ Π±Ρ‹Π»ΠΎ Ρ„ΠΎΡ€ΠΌΠ΅ Π±Π΅Π· письмСнного Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ Π²Π»Π°Π΄Π΅Π»ΡŒΡ†Π΅Π² авторских ΠΏΡ€Π°Π².

Π˜Π½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡ, содСрТащаяся Π² Π΄Π°Π½Π½ΠΎΠΉ ΠΊΠ½ΠΈΠ³Π΅, ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π° ΠΈΠ· источников, рассматриваСмых ΠΈΠ·Π΄Π°Ρ‚Π΅Π»ΡŒΡΡ‚Π²ΠΎΠΌ ΠΊΠ°ΠΊ Π½Π°Π΄Π΅ΠΆΠ½Ρ‹Π΅. Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅, имСя Π² Π²ΠΈΠ΄Ρƒ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Π΅ чСловСчСскиС ΠΈΠ»ΠΈ тСхничСскиС ошибки, ΠΈΠ·Π΄Π°Ρ‚Π΅Π»ΡŒΡΡ‚Π²ΠΎ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½ΡƒΡŽ Ρ‚ΠΎΡ‡Π½ΠΎΡΡ‚ΡŒ ΠΈ ΠΏΠΎΠ»Π½ΠΎΡ‚Ρƒ ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΠΌΡ‹Ρ… свСдСний ΠΈ Π½Π΅ нСсСт отвСтствСнности Π·Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Π΅ ошибки, связанныС с использованиСм ΠΊΠ½ΠΈΠ³ΠΈ.

ISBN 978-0131872486 (Π°Π½Π³Π» ) Β© Prentice Hall PTR, 2006

ISBN 978-5-388-00003-3 Β© ΠŸΠ΅Ρ€Π΅Π²ΠΎΠ΄ Π½Π° русский язык ООО Β«ΠŸΠΈΡ‚Π΅Ρ€ ΠŸΡ€Π΅ΡΡΒ», 2009

Β© ИзданиС Π½Π° русском языкС, ΠΎΡ„ΠΎΡ€ΠΌΠ»Π΅Π½ΠΈΠ΅ ООО Β«ΠŸΠΈΡ‚Π΅Ρ€ ΠŸΡ€Π΅ΡΡΒ», 2009

Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠ°Π½ΠΈΠ΅

ΠŸΡ€Π΅Π΄ΠΈΡΠ»ΠΎΠ²ΠΈΠ΅............................13

Java SE5 ΠΈ SE6................................14

Благодарности................................14

Π“Π»Π°Π²Π° 1. Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π² ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹....................17

Π Π°Π·Π²ΠΈΡ‚ΠΈΠ΅ абстракции........ ...................18

ΠžΠ±ΡŠΠ΅ΠΊΡ‚ ΠΈΠΌΠ΅Π΅Ρ‚ интСрфСйс..........................20

ΠžΠ±ΡŠΠ΅ΠΊΡ‚ прСдоставляСт услуги........................22

Бкрытая рСализация.............................23

ΠŸΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎΠ΅ использованиС Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ....................24

НаслСдованиС................................25

ВзаимозамСняСмыС ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ ΠΈ ΠΏΠΎΠ»ΠΈΠΌΠΎΡ€Ρ„ΠΈΠ·ΠΌ.................29

ΠžΠ΄Π½ΠΎΠΊΠΎΡ€Π½Π΅Π²Π°Ρ иСрархия...........................33

ΠšΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Ρ‹.................................33

ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΈΠ·ΠΎΠ²Π°Π½Π½Ρ‹Π΅ Ρ‚ΠΈΠΏΡ‹..........................35

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅, использованиС ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² ΠΈ врСмя ΠΈΡ… ΠΆΠΈΠ·Π½ΠΈ............36

ΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΉ: Π±ΠΎΡ€ΡŒΠ±Π° с ошибками.................38

ΠŸΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½ΠΎΠ΅ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅.........................38

Java ΠΈ Π˜Π½Ρ‚Π΅Ρ€Π½Π΅Ρ‚...............................39

РСзюмС...................................47

Π“Π»Π°Π²Π° 2. ВсС являСтся ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ..................48

Для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ ссылки................48

ВсС ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒΡΡ явно...................49

ΠžΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ приходится ΡƒΠ΄Π°Π»ΡΡ‚ΡŒ..................53

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π½ΠΎΠ²Ρ‹Ρ… Ρ‚ΠΈΠΏΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ….........................54

ΠœΠ΅Ρ‚ΠΎΠ΄Ρ‹, Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Ρ‹ ΠΈ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌΡ‹Π΅ значСния...............56

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π° Java........................58

ΠšΠ»ΡŽΡ‡Π΅Π²ΠΎΠ΅ слово static............................60

Наша пСрвая ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Π½Π° Java.......................61

ΠšΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ ΠΈ встроСнная докумСнтация..................64

Π‘Ρ‚ΠΈΠ»ΡŒ оформлСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ........................70

РСзюмС...................................70

Π“Π»Π°Π²Π° 3. ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹........................71

ΠŸΡ€ΠΎΡΡ‚Ρ‹Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ ΠΏΠ΅Ρ‡Π°Ρ‚ΠΈ..........................71

ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ Java...............................72

Π›ΠΈΡ‚Π΅Ρ€Π°Π»Ρ‹..................................82

Π’ Java отсутствуСт sizeof()..........................92

РСзюмС...................................100

Π“Π»Π°Π²Π° 4. Π£ΠΏΡ€Π°Π²Π»ΡΡŽΡ‰ΠΈΠ΅ конструкции................101

Бинтаксис foreach.............................105

return, ...................................107

break ΠΈ continue..............................108

ΠΠ΅Ρ…ΠΎΡ€ΠΎΡˆΠ°Ρ ΠΊΠΎΠΌΠ°Π½Π΄Π° goto..........................109

РСзюмС...................................115

Π“Π»Π°Π²Π° 5. Π˜Π½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΡ ΠΈ Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΠ΅..............116

ΠšΠΎΠ½ΡΡ‚Ρ€ΡƒΠΊΡ‚ΠΎΡ€ Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€ΡƒΠ΅Ρ‚ ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΡŽ.................116

ΠŸΠ΅Ρ€Π΅Π³Ρ€ΡƒΠ·ΠΊΠ° ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ²............................118

ΠžΡ‡ΠΈΡΡ‚ΠΊΠ°: финализация ΠΈ сборка мусора..................130

Π˜Π½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΡ Ρ‡Π»Π΅Π½ΠΎΠ² класса.......................137

Π˜Π½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΡ конструктором.......................140

Π˜Π½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΡ массивов..........................146

РСзюмС...................................151

Π“Π»Π°Π²Π° 6. Π£ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ доступом...................152

ΠŸΠ°ΠΊΠ΅Ρ‚ ΠΊΠ°ΠΊ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅Ρ‡Π½Ρ‹ΠΉ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ......................153

Π‘ΠΏΠ΅Ρ†ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Ρ‹ доступа Java........................159

Π˜Π½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡ ΠΈ рСализация..........................163

Доступ ΠΊ классам..............................164

РСзюмС...................................167

Π“Π»Π°Π²Π° 7. ΠŸΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎΠ΅ использованиС классов............169

Бинтаксис ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ...........................170

Бинтаксис наслСдования..........................172

Π”Π΅Π»Π΅Π³ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅...............................176

Π‘ΠΎΡ‡Π΅Ρ‚Π°Π½ΠΈΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ ΠΈ наслСдования...................178

ΠšΠΎΠΌΠΏΠΎΠ·ΠΈΡ†ΠΈΡ Π² сравнСнии с наслСдованиСм.................184

protected..................................185

ВосходящСС ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠ΅ Ρ‚ΠΈΠΏΠΎΠ².....................186

ΠšΠ»ΡŽΡ‡Π΅Π²ΠΎΠ΅ слово final............................188

Π˜Π½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΡ ΠΈ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠ° классов.....................195

РСзюмС...................................197

Π“Π»Π°Π²Π° 8. ΠŸΠΎΠ»ΠΈΠΌΠΎΡ€Ρ„ΠΈΠ·ΠΌ......................198

Π‘Π½ΠΎΠ²Π° ΠΎ восходящСм ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠΈ. . . >................199

ΠžΡΠΎΠ±Π΅Π½Π½ΠΎΡΡ‚ΠΈ................................201

ΠšΠΎΠ½ΡΡ‚Ρ€ΡƒΠΊΡ‚ΠΎΡ€Ρ‹ ΠΈ ΠΏΠΎΠ»ΠΈΠΌΠΎΡ€Ρ„ΠΈΠ·ΠΌ.......................208

ΠšΠΎΠ²Π°Ρ€ΠΈΠ°Π½Ρ‚Π½ΠΎΡΡ‚ΡŒ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌΡ‹Ρ… Ρ‚ΠΈΠΏΠΎΠ²...................216

Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° с наслСдованиСм........................217

РСзюмС...................................220

Π“Π»Π°Π²Π° 9. Π˜Π½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡΡ‹.......................221

АбстрактныС классы ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹.......................221

Π˜Π½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡΡ‹................................224

ΠžΡ‚Π΄Π΅Π»Π΅Π½ΠΈΠ΅ интСрфСйса ΠΎΡ‚ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ...................227

Π Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ интСрфСйса Ρ‡Π΅Ρ€Π΅Π· наслСдованиС...............233

Π˜Π½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡΡ‹ ΠΊΠ°ΠΊ срСдство Π°Π΄Π°ΠΏΡ‚Π°Ρ†ΠΈΠΈ....................236

Π’Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Π΅ интСрфСйсы..........................239

Π˜Π½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡΡ‹ ΠΈ Ρ„Π°Π±Ρ€ΠΈΠΊΠΈ...........................242

РСзюмС...................................244

Π“Π»Π°Π²Π° 10. Π’Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΠ΅ классы...................245

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΡ… классов.......................245

Бвязь с внСшним классом..........................246

ΠšΠΎΠ½ΡΡ‚Ρ€ΡƒΠΊΡ†ΠΈΠΈ .this ΠΈ .new..........................248

Π’Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΠ΅ классы ΠΈ восходящСС ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠ΅.............249

БСзымянныС Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΠ΅ классы......................253

Π’Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΠ΅ классы: Π·Π°Ρ‡Π΅ΠΌ?.........................261

НаслСдованиС ΠΎΡ‚ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΡ… классов....................272

МоТно Π»ΠΈ ΠΏΠ΅Ρ€Π΅ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΠΉ класс?...............272

Π›ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹Π΅ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΠ΅ классы.......................274

РСзюмС...................................276

Π“Π»Π°Π²Π° 11. ΠšΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ²...................277

ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΈΠ·ΠΎΠ²Π°Π½Π½Ρ‹Π΅ ΠΈ Ρ‚ΠΈΠΏΠΈΠ·ΠΎΠ²Π°Π½Π½Ρ‹Π΅ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Ρ‹.............277

ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΠΈ............................280

Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ Π³Ρ€ΡƒΠΏΠΏ элСмСнтов........................281

List.....................................285

Π˜Ρ‚Π΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹.................................288

LinkedList..................................291

Π‘Ρ‚Π΅ΠΊ....................................292

ΠœΠ½ΠΎΠΆΠ΅ΡΡ‚Π²ΠΎ.................................294

ΠšΠ°Ρ€Ρ‚Π°....................................296

ΠžΡ‡Π΅Ρ€Π΅Π΄ΡŒ..................................298

PriorityQueue................................299

Collection ΠΈ Iterator.............................301

Идиома Β«ΠΌΠ΅Ρ‚ΠΎΠ΄-Π°Π΄Π°ΠΏΡ‚Π΅Ρ€Β»..........................306

РСзюмС...................................309

Π“Π»Π°Π²Π° 12. ΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ошибок ΠΈ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ............310

ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ...........................310

ΠŸΠ΅Ρ€Π΅Ρ…Π²Π°Ρ‚ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΉ...........................312

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ собствСнных ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΉ.....................314

Π‘ΠΏΠ΅Ρ†ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΉ.........................319

ΠŸΠ΅Ρ€Π΅Ρ…Π²Π°Ρ‚ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½Ρ‹Ρ… ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΉ....................320

Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚Π½Ρ‹Π΅ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ Java.......................328

Π—Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΠ΅ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ finally.......................330

ИспользованиС finally с return........................334

ΠžΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΡ ΠΏΡ€ΠΈ использовании ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΉ...............336

ΠšΠΎΠ½ΡΡ‚Ρ€ΡƒΠΊΡ‚ΠΎΡ€Ρ‹...............................339

Π˜Π΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΡ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΉ........................343

ΠΠ»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π½Ρ‹Π΅ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ.........................344

РСзюмС...................................351

Π“Π»Π°Π²Π° 13. Π˜Π½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡ ΠΎ Ρ‚ΠΈΠΏΠ°Ρ…..................352

ΠΠ΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ Π² динамичСском ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠΈ Ρ‚ΠΈΠΏΠΎΠ² (RTTI).........352

РСгистрация Ρ„Π°Π±Ρ€ΠΈΠΊ............................372

РСфлСксия: динамичСская информация ΠΎ классС..............376

ДинамичСскиС посрСдники.........................380

ΠžΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ с Π½Π΅ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹ΠΌ состояниСм..................384

Π˜Π½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡΡ‹ ΠΈ информация ΠΎ Ρ‚ΠΈΠΏΠ°Ρ…....................390

РСзюмС...................................394

Π“Π»Π°Π²Π° 14. ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΈΠ·Π°Ρ†ΠΈΡ.....................397

ΠŸΡ€ΠΎΡΡ‚Π°Ρ парамСтризация..........................398

ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΈΠ·ΠΎΠ²Π°Π½Π½Ρ‹Π΅ интСрфСйсы......................404

ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΈΠ·ΠΎΠ²Π°Π½Π½Ρ‹Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹........................407

ΠŸΠΎΡΡ‚Ρ€ΠΎΠ΅Π½ΠΈΠ΅ слоТных ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ.......................419

ΠžΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΡ................................437

ΠœΠ΅Ρ‚Π°ΡΠΈΠΌΠ²ΠΎΠ»Ρ‹................................440

РСзюмС...................................452

Π“Π»Π°Π²Π° 15. ΠœΠ°ΡΡΠΈΠ²Ρ‹........................454

ΠžΡΠΎΠ±Π΅Π½Π½ΠΎΡΡ‚ΠΈ массивов...........................454

Массив ΠΊΠ°ΠΊ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚.............................456

Π’ΠΎΠ·Π²Ρ€Π°Ρ‚ массива..............................458

ΠœΠ½ΠΎΠ³ΠΎΠΌΠ΅Ρ€Π½Ρ‹Π΅ массивы...........................460

ΠœΠ°ΡΡΠΈΠ²Ρ‹ ΠΈ парамСтризация.........................463

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ тСстовых Π΄Π°Π½Π½Ρ‹Ρ….........................465

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ массивов с использованиСм Π³Π΅Π½Π΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ².............470

Π’ΡΠΏΠΎΠΌΠΎΠ³Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ инструмСнтарий Arrays..................474

РСзюмС...................................482

Π“Π»Π°Π²Π° 16. БистСма Π²Π²ΠΎΠ΄Π°/Π²Ρ‹Π²ΠΎΠ΄Π° Java...............483

Класс File..................................484

Π’Π²ΠΎΠ΄ ΠΈ Π²Ρ‹Π²ΠΎΠ΄................................489

Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ΠΎΠ² ΠΈ интСрфСйсов...................491

ΠšΠ»Π°ΡΡΡ‹ Reader ΠΈ Writer...........................494

RandomAccessFile: сам по сСбС.......................497

Π’ΠΈΠΏΠΈΡ‡Π½ΠΎΠ΅ использованиС ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ² Π²Π²ΠΎΠ΄Π°/Π²Ρ‹Π²ΠΎΠ΄Π°..............498

БрСдства чтСния ΠΈ записи Ρ„Π°ΠΉΠ»ΠΎΠ².....................505