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

Π§ΠΈΡ‚Π°Ρ‚ΡŒ ΠΎΠ½Π»Π°ΠΉΠ½ Β«Java: руководство для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ… (Π›ΠŸ)Β». Π‘Ρ‚Ρ€Π°Π½ΠΈΡ†Π° 6

Автор Π¨ΠΈΠ»Π΄Ρ‚ Π“Π΅Ρ€Π±Π΅Ρ€Ρ‚

ΠŸΡ€ΠΈΠ½Ρ†ΠΈΠΏ ΠΏΠΎΠ»ΠΈΠΌΠΎΡ€Ρ„ΠΈΠ·ΠΌΠ° Ρ…ΠΎΡ€ΠΎΡˆΠΎ ΠΈΠ»Π»ΡŽΡΡ‚Ρ€ΠΈΡ€ΡƒΠ΅Ρ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅ Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅: β€œΠΎΠ΄ΠΈΠ½ интСрфСйс β€” мноТСство мСтодов”. Π­Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ создания ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ интСрфСйса для Π³Ρ€ΡƒΠΏΠΏΡ‹ взаимосвязанных дСйствий. ΠŸΠΎΠ»ΠΈΠΌΠΎΡ€Ρ„ΠΈΠ·ΠΌ ΡƒΠΏΡ€ΠΎΡ‰Π°Π΅Ρ‚ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ благодаря возмоТности ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ ΠΎΠ±Ρ‰ΠΈΠΉ класс дСйствий с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΈ Ρ‚ΠΎΠ³ΠΎ ΠΆΠ΅ интСрфСйса. Π’Ρ‹Π±Ρ€Π°Ρ‚ΡŒ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ΅ дСйствиС (Ρ‚.Π΅. ΠΌΠ΅Ρ‚ΠΎΠ΄) β€” Π·Π°Π΄Π°Ρ‡Π° компилятора, ΠΈ ΠΎΠ½ Ρ€Π΅ΡˆΠ°Π΅Ρ‚ Π΅Π΅ Π² зависимости ΠΎΡ‚ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹Ρ… условий. Как программисту Π²Π°ΠΌ Π½Π΅ приходится Π²Ρ‹Π±ΠΈΡ€Π°Ρ‚ΡŒ ΠΌΠ΅Ρ‚ΠΎΠ΄ Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ. НуТно лишь ΠΏΠΎΠΌΠ½ΠΈΡ‚ΡŒ основныС ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΡ‹ использования ΠΎΠ±Ρ‰Π΅Π³ΠΎ интСрфСйса.НаслСдованиС

НаслСдованиС β€” это процСсс, Π² Ρ…ΠΎΠ΄Π΅ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΎΠ΄ΠΈΠ½ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ ΠΏΡ€ΠΈΠΎΠ±Ρ€Π΅Ρ‚Π°Π΅Ρ‚ свойства Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°. НаслСдованиС ΠΈΠΌΠ΅Π΅Ρ‚ ΠΎΡ‡Π΅Π½ΡŒ большоС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ с Π΅Π³ΠΎ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ поддСрТиваСтся иСрархичСская классификация. Если Π²Π΄ΡƒΠΌΠ°Ρ‚ΡŒΡΡ, Ρ‚ΠΎ знания Ρ‡Π°Ρ‰Π΅ всСго ΠΈΠΌΠ΅ΡŽΡ‚ ΠΈΠ΅Ρ€Π°Ρ€Ρ…ΠΈΡ‡Π΅ΡΠΊΡƒΡŽ структуру. НапримСр, яблоки ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠ³ΠΎ сорта относятся ΠΊ классу яблок, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π² свою ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ относится ΠΊ классу Ρ„Ρ€ΡƒΠΊΡ‚ΠΎΠ², Π° Ρ‚ΠΎΡ‚ β€” ΠΊ Π±ΠΎΠ»Π΅Π΅ ΠΎΠ±ΡˆΠΈΡ€Π½ΠΎΠΌΡƒ классу ΡΡŠΠ΅Π΄ΠΎΠ±Π½Ρ‹Ρ… ΠΏΠ»ΠΎΠ΄ΠΎΠ². Π’ Π΄Π°Π½Π½ΠΎΠΌ случаС ΡΡŠΠ΅Π΄ΠΎΠ±Π½Ρ‹Π΅ ΠΏΠ»ΠΎΠ΄Ρ‹ ΠΎΠ±Π»Π°Π΄Π°ΡŽΡ‚ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹ΠΌΠΈ свойствами (ΠΎΠ½ΠΈ ΠΏΠΈΡ‚Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹, Π½Π΅ ядовиты ΠΈ Ρ‚.Π΄.). Π­Ρ‚ΠΈ ΠΆΠ΅ свойства автоматичСски присущи подклассу Ρ„Ρ€ΡƒΠΊΡ‚ΠΎΠ². ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, класс Ρ„Ρ€ΡƒΠΊΡ‚ΠΎΠ² ΠΎΠ±Π»Π°Π΄Π°Π΅Ρ‚ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌΠΈ свойствами (сочныС, сладкиС ΠΈ Ρ‚.Π΄.), Ρ‡Ρ‚ΠΎ ΠΎΡ‚Π»ΠΈΡ‡Π°Π΅Ρ‚ Π΅Π³ΠΎ ΠΎΡ‚ класса Π΄Ρ€ΡƒΠ³ΠΈΡ… ΡΡŠΠ΅Π΄ΠΎΠ±Π½Ρ‹Ρ… ΠΏΠ»ΠΎΠ΄ΠΎΠ². Π―Π±Π»ΠΎΠΊΠΈ ΠΈΠΌΠ΅ΡŽΡ‚ Π±ΠΎΠ»Π΅Π΅ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹Π΅ свойства (растут Π½Π° Π΄Π΅Ρ€Π΅Π²ΡŒΡΡ…, Π½Π΅ ΡΠ²Π»ΡΡŽΡ‚ΡΡ тропичСскими ΠΏΠ»ΠΎΠ΄Π°ΠΌΠΈ ΠΈ Ρ‚.Π΄.) И Π½Π°ΠΊΠΎΠ½Π΅Ρ†, ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΉ сорт яблок наслСдуСт всС свойства описанных Π²Ρ‹ΡˆΠ΅ классов ΠΈ, ΠΊΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, ΠΎΠ±Π»Π°Π΄Π°Π΅Ρ‚ особыми свойствами, ΠΎΡ‚Π»ΠΈΡ‡Π°ΡŽΡ‰ΠΈΠΌΠΈ Π΅Π³ΠΎ ΠΎΡ‚ Π΄Ρ€ΡƒΠ³ΠΈΡ… сортов яблок.

Π‘Π΅Π· Ρ‚Π°ΠΊΠΎΠΉ иСрархичСской структуры для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° ΠΏΡ€ΠΈΡˆΠ»ΠΎΡΡŒ Π±Ρ‹ Π·Π°Π½ΠΎΠ²ΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡ‚ΡŒ вСсь Π½Π°Π±ΠΎΡ€ свойств. Благодаря наслСдованию для ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° достаточно ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ Ρ‚Π΅ свойства, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΎΡ‚Π»ΠΈΡ‡Π°ΡŽΡ‚ Π΅Π³ΠΎ ΠΎΡ‚ Π΄Ρ€ΡƒΠ³ΠΈΡ… классов, Π° ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Π΅ ΠΎΠ±Ρ‰ΠΈΠ΅ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Ρ‹ ΠΎΠ½ наслСдуСт ΠΎΡ‚ своих Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΡΠΊΠΈΡ… классов. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, благодаря наслСдованию Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚, ΡΠ²Π»ΡΡŽΡ‰ΠΈΠΉΡΡ экзСмпляром Π±ΠΎΠ»Π΅Π΅ ΠΎΠ±Ρ‰Π΅Π³ΠΎ класса.Установка ΠΊΠΎΠΌΠΏΠ»Π΅ΠΊΡ‚Π° Java Development Kit

Π˜Ρ‚Π°ΠΊ, усвоив тСорСтичСскиС основы Java, ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΈΡΡ‚ΡƒΠΏΠ°Ρ‚ΡŒ ΠΊ написанию ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ Π½Π° Java. Для Ρ‚ΠΎΠ³ΠΎ Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π½Π°ΠΏΠΈΡΠ°Π½Π½ΡƒΡŽ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ ΠΌΠΎΠΆΠ½ΠΎ Π±Ρ‹Π»ΠΎ ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΈ Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ Π½Π° Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅, Π²Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Π½Π° своСм ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π΅ ΠΊΠΎΠΌΠΏΠ»Π΅ΠΊΡ‚ Java Development Kit, ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‰ΠΈΠΉ процСсс Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ Π½Π° Java. Π­Ρ‚ΠΎΡ‚ ΠΊΠΎΠΌΠΏΠ»Π΅ΠΊΡ‚ свободно прСдоставляСтся ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠ΅ΠΉ Oracle. На ΠΌΠΎΠΌΠ΅Π½Ρ‚ написания Π΄Π°Π½Π½ΠΎΠΉ ΠΊΠ½ΠΈΠ³ΠΈ доступна Π±Ρ‹Π»Π° Π΅Π³ΠΎ вСрсия JDK 7, примСняСмая Π½Π° ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅ Java SE 7, Π³Π΄Π΅ SE β€” стандартная вСрсия. ΠšΠΎΠΌΠΏΠ»Π΅ΠΊΡ‚ JDK 7 содСрТит Π½Π΅ΠΌΠ°Π»ΠΎ Π½ΠΎΠ²Ρ‹Ρ… срСдств, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ΡΡ Π² ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΠΈΡ… вСрсиях Java, ΠΈ поэтому для компиляции ΠΈ выполнСния ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ, прСдставлСнных Π² этой ΠΊΠ½ΠΈΠ³Π΅, потрСбуСтся JDK 7 ΠΈΠ»ΠΈ Π±ΠΎΠ»Π΅Π΅ поздняя вСрсия Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΏΠ»Π΅ΠΊΡ‚Π°.

ΠšΠΎΠΌΠΏΠ»Π΅ΠΊΡ‚ JDK ΠΌΠΎΠΆΠ½ΠΎ Π·Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ ΠΏΠΎ адрСсу www.oracle.com/technetwork/java/javase/downloads/index.html. Для этого достаточно ΠΏΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ Π½Π° страницу Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ ΠΏΠΎ ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠΌΡƒ адрСсу ΠΈ ΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚ΡŒ инструкциям для вашСго Ρ‚ΠΈΠΏΠ° ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π° ΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмы. ПослС установки JDK Π²Ρ‹ смоТСтС ΠΏΡ€ΠΈΡΡ‚ΡƒΠΏΠΈΡ‚ΡŒ ΠΊ компиляции ΠΈ запуску ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ Π½Π° Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅. Π‘Ρ€Π΅Π΄ΠΈ ΠΌΠ½ΠΎΠ³ΠΈΡ… ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ, входящих Π² состав JDK, Π²Π°ΠΌ Π² ΠΏΠ΅Ρ€Π²ΡƒΡŽ ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ понадобятся Π΄Π²Π΅. ΠŸΠ΅Ρ€Π²Π°Ρ ΠΈΠ· Π½ΠΈΡ…, javac, слуТит Π² качСствС компилятора Java, Π° вторая, java, β€” Π² качСствС стандартного ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ‚ΠΎΡ€Π° Java ΠΈ Π·Π°Ρ‡Π°ΡΡ‚ΡƒΡŽ называСтся Π·Π°Π³Ρ€ΡƒΠ·Ρ‡ΠΈΠΊΠΎΠΌ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ.

Π‘Π»Π΅Π΄ΡƒΠ΅Ρ‚, ΠΎΠ΄Π½Π°ΠΊΠΎ, ΠΈΠΌΠ΅Ρ‚ΡŒ Π² Π²ΠΈΠ΄Ρƒ, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, входящиС Π² состав JDK, Π·Π°ΠΏΡƒΡΠΊΠ°ΡŽΡ‚ΡΡ ΠΈΠ· ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ строки. Они Π½Π΅ ΡΠ²Π»ΡΡŽΡ‚ΡΡ ΠΎΠΊΠΎΠ½Π½Ρ‹ΠΌΠΈ прилоТСниями ΠΈ Π½Π΅ ΡΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‚ ΠΈΠ½Ρ‚Π΅Π³Ρ€ΠΈΡ€ΠΎΠ²Π°Π½Π½ΡƒΡŽ срСду Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ.

На Π·Π°ΠΌΠ΅Ρ‚ΠΊΡƒΠŸΠΎΠΌΠΈΠΌΠΎ основных ΠΈΠ½ΡΡ‚Ρ€ΡƒΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½Ρ‹Ρ… срСдств JDK, доступных ΠΈΠ· ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ строки, для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ Π½Π° Java ΠΈΠΌΠ΅ΡŽΡ‚ΡΡ высококачСствСнныС ΠΈΠ½Ρ‚Π΅Π³Ρ€ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Π΅ срСды Π²Ρ€ΠΎΠ΄Π΅ NetBeans ΠΈ Eclipse. Π˜Π½Ρ‚Π΅Π³Ρ€ΠΈΡ€ΠΎΠ²Π°Π½Π½Π°Ρ срСда ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΠΊΠ°Π·Π°Ρ‚ΡŒΡΡ ΠΎΡ‡Π΅Π½ΡŒ ΡƒΠ΄ΠΎΠ±Π½ΠΎΠΉ для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΈ развСртывания коммСрчСских ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. Как ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ, Π² ΠΈΠ½Ρ‚Π΅Π³Ρ€ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠΉ срСдС ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎ ТСланию ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ, прСдставлСнных Π² этой ΠΊΠ½ΠΈΠ³Π΅. Но инструкции ΠΏΠΎ компиляции ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΡŽ этих ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ приводятся Π² ΠΊΠ½ΠΈΠ³Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для ΠΈΠ½ΡΡ‚Ρ€ΡƒΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½Ρ‹Ρ… срСдств JDK, доступных ΠΈΠ· ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ строки, Ρ€Π°Π΄ΠΈ простоты усвоСния ΠΏΠΎ Ρ†Π΅Π»ΠΎΠΌΡƒ ряду ΠΏΡ€ΠΈΡ‡ΠΈΠ½. Π’ΠΎ-ΠΏΠ΅Ρ€Π²Ρ‹Ρ…, ΠΊΠΎΠΌΠΏΠ»Π΅ΠΊΡ‚ JDK Π»Π΅Π³ΠΊΠΎ доступСн для всСх Ρ‡ΠΈΡ‚Π°Ρ‚Π΅Π»Π΅ΠΉ ΠΊΠ½ΠΈΠ³ΠΈ. Π’ΠΎ-Π²Ρ‚ΠΎΡ€Ρ‹Ρ…, инструкции ΠΏΠΎ ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΡŽ JDK ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²Ρ‹ для всСх ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ. А ΠΊΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, простыС ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ, прСдставлСнныС Π² этой ΠΊΠ½ΠΈΠ³Π΅, ΠΏΡ€ΠΎΡ‰Π΅ всСго ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ ΠΈΠ½ΡΡ‚Ρ€ΡƒΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½Ρ‹ΠΌΠΈ срСдствами JDK ΠΈΠ· ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ строки. Если ΠΆΠ΅ Π²Ρ‹ ΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ΡΡŒ ΠΈΠ½Ρ‚Π΅Π³Ρ€ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠΉ срСдой Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ, Π²Π°ΠΌ придСтся ΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚ΡŒ Π΅Π΅ инструкциям. А Π² силу ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠΉ, ΠΈΠΌΠ΅ΡŽΡ‰ΠΈΡ…ΡΡ Ρƒ Ρ€Π°Π·Π½Ρ‹Ρ… ΠΈΠ½Ρ‚Π΅Π³Ρ€ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… срСд Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ, Π΄Π°Ρ‚ΡŒ ΠΎΠ±Ρ‰ΠΈΠ΅ инструкции ΠΏΠΎ компиляции ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΡŽ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ, написанных Π½Π° Java, Π½Π΅ прСдставляСтся Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹ΠΌ.ΠŸΠ΅Ρ€Π²Π°Ρ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Π½Π° Java

ΠŸΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉΡ‚Π΅ ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΈ Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΡΡ‚ΡƒΡŽ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ, исходный ΠΊΠΎΠ΄ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ Π½ΠΈΠΆΠ΅./*Π­Ρ‚ΠΎ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ простой ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π° Java.ΠŸΡ€ΠΈΡΠ²ΠΎΠΈΡ‚ΡŒ Π΅Π΅ исходному Ρ„Π°ΠΉΠ»Ρƒ имя Example.java.*/class Example { // Π’Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ всякой ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π° Java начинаСтся // с Π²Ρ‹Π·ΠΎΠ²Π° ΠΌΠ΅Ρ‚ΠΎΠ΄Π° main(). public static void main(String args[]) { System.out.println("Java drives the Web."); }}

Π˜Ρ‚Π°ΠΊ, Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ дСйствия.

Π’Π²Π΅Π΄ΠΈΡ‚Π΅ исходный ΠΊΠΎΠ΄ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹.

Π‘ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΡƒΠΉΡ‚Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ.

ЗапуститС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ Π½Π° Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅.Π’Π²ΠΎΠ΄ исходного ΠΊΠΎΠ΄Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ

Π˜ΡΡ…ΠΎΠ΄Π½Ρ‹Π΅ ΠΊΠΎΠ΄Ρ‹ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ, прСдставлСнных Π² этой ΠΊΠ½ΠΈΠ³Π΅, доступны Π½Π° Π²Π΅Π±-сайтС ΠΈΠ·Π΄Π°Ρ‚Π΅Π»ΡŒΡΡ‚Π²Π° McGraw-Hill ΠΏΠΎ адрСсу www.oraclepressbooks.com. ΠŸΠ΅Ρ€Π΅ΠΉΠ΄ΠΈΡ‚Π΅ ΠΏΠΎ ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠΌΡƒ адрСсу Π½Π° Π³Π»Π°Π²Π½ΡƒΡŽ страницу этого Π²Π΅Π±-сайта, Π° Π·Π°Ρ‚Π΅ΠΌ ΠΏΠΎ ссылкС Dowloads-Code-Java A Beginner's Guide, Fifth Edition ΠΈ Π΄Π°Π»Π΅Π΅ слСдуйтС инструкциям ΠΏΠΎ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠ΅ Π°Ρ€Ρ…ΠΈΠ²Π½ΠΎΠ³ΠΎ Ρ„Π°ΠΉΠ»Π° с исходными ΠΊΠΎΠ΄Π°ΠΌΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ. Но исходный ΠΊΠΎΠ΄ ΠΌΠΎΠΆΠ½ΠΎ ввСсти ΠΈ Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ, воспользовавшись простым тСкстовым Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€ΠΎΠΌ, Π° Π½Π΅ тСкстовым процСссором Π²Ρ€ΠΎΠ΄Π΅ Word, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ вмСстС с исходным тСкстом ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΎΠ½ записываСт Π² Ρ„Π°ΠΉΠ» свСдСния ΠΎ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ тСкста, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π±ΡƒΠ΄ΡƒΡ‚ восприняты компилятором ΠΊΠ°ΠΊ нСдопустимыС языковыС конструкции. Если Π²Ρ‹ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚Π΅ Π½Π° ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅ Windows, Π²Π°ΠΌ Π²ΠΏΠΎΠ»Π½Π΅ ΠΏΠΎΠ΄ΠΎΠΉΠ΄Π΅Ρ‚ WordPad ΠΈΠ»ΠΈ Π΄Ρ€ΡƒΠ³ΠΎΠΉ простой Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€ тСкста.

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

Π’ Java исходный Ρ„Π°ΠΉΠ» Ρ„ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎ называСтся Π΅Π΄ΠΈΠ½ΠΈΡ†Π΅ΠΉ компиляции. Π­Ρ‚ΠΎ тСкстовый Ρ„Π°ΠΉΠ», содСрТащий опрСдСлСния ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΈΠ»ΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… классов. (Π˜ΡΡ…ΠΎΠ΄Π½Ρ‹Π΅ Ρ„Π°ΠΉΠ»Ρ‹ ΠΏΠ΅Ρ€Π²Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ Π±ΡƒΠ΄ΡƒΡ‚ содСрТат Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄ΠΈΠ½ класс.) ΠšΠΎΠΌΠΏΠΈΠ»ΡΡ‚ΠΎΡ€ Java Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚, Ρ‡Ρ‚ΠΎΠ±Ρ‹ исходный Ρ„Π°ΠΉΠ» ΠΈΠΌΠ΅Π» Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ . j ava. Анализируя исходный ΠΊΠΎΠ΄ ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, Π²Ρ‹ Π·Π°ΠΌΠ΅Ρ‚ΠΈΡ‚Π΅, Ρ‡Ρ‚ΠΎ класс ΠΈΠΌΠ΅Π΅Ρ‚ имя Example. И это Π½Π΅ случайно. Π’ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ… Π½Π° Java вСсь ΠΊΠΎΠ΄ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒΡΡ Π²Π½ΡƒΡ‚Ρ€ΠΈ класса. Условно принято, Ρ‡Ρ‚ΠΎ имя класса Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΡΠΎΠ²ΠΏΠ°Π΄Π°Ρ‚ΡŒ с ΠΈΠΌΠ΅Π½Π΅ΠΌ Ρ„Π°ΠΉΠ»Π°, содСрТащСго исходный тСкст ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. НСтрудно ΡƒΠ±Π΅Π΄ΠΈΡ‚ΡŒΡΡ, Ρ‡Ρ‚ΠΎ имя Ρ„Π°ΠΉΠ»Π° Π² точности соотвСтствуСт ΠΈΠΌΠ΅Π½ΠΈ класса Π²ΠΏΠ»ΠΎΡ‚ΡŒ Π΄ΠΎ рСгистра. Π”Π΅Π»ΠΎ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ Π² Java ΠΈΠΌΠ΅Π½Π° ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Ρ‹ зависят ΠΎΡ‚ рСгистра символов. На ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ взгляд, условиС соотвСтствия ΠΈΠΌΠ΅Π½ классов ΠΈ Ρ„Π°ΠΉΠ»ΠΎΠ² ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚ΡŒΡΡ слишком строгим, Π½ΠΎ ΠΎΠ½ΠΎ ΡƒΠΏΡ€ΠΎΡ‰Π°Π΅Ρ‚ ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΡŽ ΠΈ сопровоТдСниС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ, ΠΊΠ°ΠΊ станСт ясно ΠΈΠ· ΠΏΠΎΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ².ΠšΠΎΠΌΠΏΠΈΠ»ΡΡ†ΠΈΡ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹

Для компиляции ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Example запуститС компилятор javac, ΡƒΠΊΠ°Π·Π°Π² Π² ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ строкС имя исходного Ρ„Π°ΠΉΠ»Π°, ΠΊΠ°ΠΊ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π½ΠΈΠΆΠ΅.C:\>javac Example.java

ΠšΠΎΠΌΠΏΠΈΠ»ΡΡ‚ΠΎΡ€ javac создаст Ρ„Π°ΠΉΠ» Example .class, содСрТащий Π±Π°ΠΉΡ‚-ΠΊΠΎΠ΄ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. Напомним, Ρ‡Ρ‚ΠΎ Π±Π°ΠΉΡ‚-ΠΊΠΎΠ΄ Π½Π΅ являСтся исполняСмым, Π½ΠΎ интСрпрСтируСтся Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠΉ машиной Java. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ компиляции Π² javac нСльзя Π·Π°ΠΏΡƒΡΠΊΠ°Ρ‚ΡŒ Π½Π° Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ нСпосрСдствСнно.

Для запуска скомпилированной ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ слСдуСт Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ‚ΠΎΡ€ΠΎΠΌ java. Π’ качСствС ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° Π΅ΠΌΡƒ Π½ΡƒΠΆΠ½ΠΎ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‚ΡŒ имя класса Example Π² ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ строкС:C:\>java Example