ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄ Π½Π° java Π½Π° Π°Π½Π΄Ρ€ΠΎΠΈΠ΄

ПишСм своё ΠΏΠ΅Ρ€Π²ΠΎΠ΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π½Π° Android

ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄ Π½Π° java Π½Π° Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄ Π½Π° java Π½Π° Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄ Π½Π° java Π½Π° Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄ Π½Π° java Π½Π° Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄ Π½Π° java Π½Π° Π°Π½Π΄Ρ€ΠΎΠΈΠ΄

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

ΠŸΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΊΠ° ΠΊ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅

Установка срСды Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Eclipse

Π’ΡƒΡ‚ всё просто. Π˜Π΄Ρ‘ΠΌ Π² Ρ€Π°Π·Π΄Π΅Π» Downloads Π½Π° ΠΎΡ„ΠΈΡ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠΌ сайтС ΠΈ ΠΊΠ°Ρ‡Π°Π΅ΠΌ Π²Π΅Ρ€ΡΠΈΡŽ Classic. Π”Π°Π»Π΅Π΅ просто распакуйтС Π°Ρ€Ρ…ΠΈΠ², ΠΊΡƒΠ΄Π° Π²Π°ΠΌ хочСтся, я ΠΆΠ΅ Ρ€Π΅ΡˆΠΈΠ» это ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Π² ΠΏΠΎΡ‡Π΅Ρ‚Π½ΡƒΡŽ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΡŽ C:\Eclipse

Установка ADT ΠΏΠ»Π°Π³ΠΈΠ½Π° ΠΊ Eclipse

ЗапускаСм Eclipse, ΠΈ ΠΎΡ‚ΠΊΡ€Ρ‹Π²Π°Π΅ΠΌ Π΄ΠΈΠ°Π»ΠΎΠ³ установки ΠΏΠ»Π°Π³ΠΈΠ½Π° Ρ‡Π΅Ρ€Π΅Π· мСню Help β†’ Install new software. Π’ ΠΏΠΎΠ»Π΅ Work with вписываСм адрСс Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ ΠΏΠ»Π°Π³ΠΈΠ½Π° dl-ssl.google.com/android/eclipse (Ссли Π½Π΅ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»ΠΎΡΡŒ, Ρ‚ΠΎ ΠΏΠ»Π°Π³ΠΈΠ½ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΊΠ°Ρ‡Π°Ρ‚ΡŒ ΠΈ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ ΠΏΠΎ ссылкС http://developer.android.com/sdk/eclipse-adt.html), Π΄Π°Π»Π΅Π΅ Π² Ρ‚Π°Π±Π»ΠΈΡ†Π΅ Π½ΠΈΠΆΠ΅ появится Developer Tools, ΠΎΡ‚ΠΌΠ΅Ρ‡Π°Π΅ΠΌ Π΅Π³ΠΎ ΠΈ ΠΈΠ΄Π΅ΠΌ Π΄Π°Π»Π΅Π΅.

ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄ Π½Π° java Π½Π° Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄ Π½Π° java Π½Π° Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄ Π½Π° java Π½Π° Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄ Π½Π° java Π½Π° Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄ Π½Π° java Π½Π° Π°Π½Π΄Ρ€ΠΎΠΈΠ΄
ПослС ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎΠΉ установки, ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠ΅Ρ€Π΅Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ срСду Eclipse.

Установка срСды для Java: JDK ΠΈ JRE

Если Ρƒ вас Π΅Ρ‰Π΅ Π½Π΅ установлСны Java Development Kit (JDK) ΠΈ Java Runtime Environment (JRE), Ρ‚ΠΎ ΠΈΡ… Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ. Π‘Π΄Π΅Π»Π°Ρ‚ΡŒ это ΠΌΠΎΠΆΠ½ΠΎ Π½Π° сайтС Oracle. Π‘ΠΊΠ°Ρ‡Π°ΠΉΡ‚Π΅ ΠΈ установитС JDK ΠΈ JRE.

ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄ Π½Π° java Π½Π° Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄ Π½Π° java Π½Π° Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄ Π½Π° java Π½Π° Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄ Π½Π° java Π½Π° Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄ Π½Π° java Π½Π° Π°Π½Π΄Ρ€ΠΎΠΈΠ΄

Установка Android SDK

Π”Π΅Π»ΠΎ ΠΎΡΡ‚Π°Π»ΠΎΡΡŒ Π·Π° ΠΌΠ°Π»Ρ‹ΠΌ β€” это ΡΠΊΠ°Ρ‡Π°Ρ‚ΡŒ ΠΈ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ свСТий Android SDK. Π­Ρ‚ΠΎ дСлаСтся Π½Π° сайтС для Android Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ². Π― Π»ΠΈΡ‡Π½ΠΎ установил SDK ΠΎΠΏΡΡ‚ΡŒ-Ρ‚Π°ΠΊΠΈ Π² ΠΏΠΎΡ‡Ρ‘Ρ‚Π½ΡƒΡŽ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΡŽ C:\Android. ПослС этого Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ ΠΈ ΠΏΡ€ΠΎΡ‡ΠΈΠ΅ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ элСмСнты SDK. Π― Π΄ΠΎΠ±Π°Π²ΠΈΠ» всС доступныС вСрсии, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΏΠ»Π°Π½ΠΈΡ€ΡƒΡŽ Π΄Π΅Π»Π°Ρ‚ΡŒ прилоТСния ΠΈ для Ρ€Π°Π½Π½ΠΈΡ… ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌ, Π° Ρ‚Π°ΠΊΠΆΠ΅ USB-Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ ΠΈ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ.

ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄ Π½Π° java Π½Π° Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄ Π½Π° java Π½Π° Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄ Π½Π° java Π½Π° Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄ Π½Π° java Π½Π° Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄ Π½Π° java Π½Π° Π°Π½Π΄Ρ€ΠΎΠΈΠ΄

ΠŸΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΊΠ° ΠΊ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½Π°. Π’Π΅ΠΏΠ΅Ρ€ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ этап β€” созданиС прилоТСния.

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Android-прилоТСния

ΠŸΠ΅Ρ€Π΅Π΄ Ρ‚Π΅ΠΌ ΠΊΠ°ΠΊ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ своё ΠΏΠ΅Ρ€Π²ΠΎΠ΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠ΅ Android-устройство, Ρ‡Ρ‚ΠΎΠ±Ρ‹ быстро Ρ‚Π΅ΡΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π½Π° Π½Ρ‘ΠΌ свой свСТСнаписанный софт. Π’Π½Π°Ρ‡Π°Π»Π΅ я Ρ…ΠΎΡ‡Ρƒ ΡΠΊΠ°Π·Π°Ρ‚ΡŒ Π²Π°ΠΌ нСсколько слов ΠΏΠΎ ΠΏΠΎΠ²ΠΎΠ΄Ρƒ Android Virtual Device (AVD). Π­Ρ‚ΠΎ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΉ смартфон с ОБ Android, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ Π²Ρ‹ с Π»Π΅Π³ΠΊΠΎΡΡ‚ΡŒΡŽ смоТСтС Π·Π°ΠΏΡƒΡΠΊΠ°Ρ‚ΡŒ ΡΠΎΠ·Π΄Π°Π½Π½ΡƒΡŽ Π²Π°ΠΌΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ. Как ΠΌΠΎΠΆΠ½ΠΎ Π·Π°ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ, прСимущСство Android Virtual Device состоит Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ наглядно ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ ΠΊΠ°ΠΊ Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π’Π°ΡˆΠ° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Π½Π° Ρ€Π°Π·Π½Ρ‹Ρ… смартфонах с Android, Π° Π½Π΅ ΠΏΠΎΠΊΡƒΠΏΠ°Ρ‚ΡŒ вСсь ΠΌΠΎΠ΄Π΅Π»ΡŒΠ½Ρ‹ΠΉ ряд ΠΈ Ρ‚Π΅ΡΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π½Π° ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΠΈΠ· Π½ΠΈΡ….

ΠŸΡ€ΠΈΡΡ‚ΡƒΠΏΠΈΠΌ ΠΊ созданию Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ устройства Android. Π‘Π»Π΅Π΄ΡƒΠ΅ΠΌ Π² мСню ΠΏΠΎ ΠΏΡƒΡ‚ΠΈ Window β†’ Android SDK and AVD Manager.

ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄ Π½Π° java Π½Π° Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄ Π½Π° java Π½Π° Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄ Π½Π° java Π½Π° Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄ Π½Π° java Π½Π° Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄ Π½Π° java Π½Π° Π°Π½Π΄Ρ€ΠΎΠΈΠ΄

Π’Ρ‹Π±ΠΈΡ€Π°Π΅ΠΌ New Π² ΠΏΡ€Π°Π²ΠΎΠΉ части ΠΎΠΊΠ½Π°, Π² появившСмся ΠΎΠΊΠ½Π΅ вписываСм имя Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ устройства, ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡƒ (допустим Android 2.1), Ρ€Π°Π·ΠΌΠ΅Ρ€ ΠΊΠ°Ρ€Ρ‚Ρ‹ памяти (допустим 512 Mb), Ρ‚ΠΈΠΏ дисплСя (допустим HVGA). Π—Π°Ρ‚Π΅ΠΌ ΠΆΠΌΠ΅ΠΌ Π²Π½ΠΈΠ·Ρƒ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡƒ Create AVD.

Π’Π΅ΠΏΠ΅Ρ€ΡŒ создадим ΠΏΡ€ΠΎΠ΅ΠΊΡ‚. Для этого ΠΈΠ΄Π΅ΠΌ ΠΏΠΎ ΠΏΡƒΡ‚ΠΈ Π² мСню File β†’ New β†’ Other, Π² появившСмся спискС Android β†’ Android Project.

ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄ Π½Π° java Π½Π° Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄ Π½Π° java Π½Π° Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄ Π½Π° java Π½Π° Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄ Π½Π° java Π½Π° Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄ Π½Π° java Π½Π° Π°Π½Π΄Ρ€ΠΎΠΈΠ΄

Π’ качСствС ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π° расскаТу ΠΎ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ ΠΎΠ΄Π½ΠΎΠΉ ΠΌΠΎΠ΅ΠΉ ΠΏΡ€ΠΎΡΡ‚Π΅ΠΉΡˆΠ΅ΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ UfaTermometr, ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‰Π΅ΠΉ Ρ‚Π΅ΠΊΡƒΡ‰ΡƒΡŽ Ρ‚Π΅ΠΌΠΏΠ΅Ρ€Π°Ρ‚ΡƒΡ€Ρƒ с Π΄Π°Ρ‚Ρ‡ΠΈΠΊΠΎΠ², располоТСнных Π½Π° ΠΎΠ΄Π½ΠΎΠΌ ΠΈΠ· ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² мСстной энСрго-ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ.

ΠŸΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ ΠΎΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°Ρ‚ΡŒΡΡ Π½Π° Ρ€Π°Π·ΠΌΠ΅Ρ‚ΠΊΠ΅ элСмСнтов управлСния Π½Π΅ Π±ΡƒΠ΄Ρƒ, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ это всё достаточно ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ описано Π² ΠΌΠ°Π½ΡƒΠ°Π»Π΅ ΠΈ Π²ΠΎΠΎΠ±Ρ‰Π΅ ΠΈΠ½Ρ‚ΡƒΠΈΡ‚ΠΈΠ²Π½ΠΎ понятно, особСнно Ρ‚ΠΎΠΌΡƒ, ΠΊΡ‚ΠΎ ΠΈΠΌΠ΅Π» Π΄Π΅Π»ΠΎ с html/css-вёрсткой ΠΈ/ΠΈΠ»ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΎΠΉ Π² ΠΊΠ°ΠΊΠΎΠΉ-Π»ΠΈΠ±ΠΎ Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½ΠΎΠΉ срСдС (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Delphi). ЕдинствСнноС, ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ ΠΊΠ°ΠΊ я Π·Π°Π³Ρ€ΡƒΠ·ΠΈΠ» ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½ΠΎΠ΅ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Π² ImageView. Π’ ΠΏΠΎΠ»Π΅ src указываСтся ΠΏΡƒΡ‚ΡŒ, Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΠΉΡΡ с символа @ ΠΈ Π΄Π°Π»Π΅Π΅ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚Π΅ адрСс ΠΏΠΎ Π΄Π΅Ρ€Π΅Π²Ρƒ. Π’ ΠΏΠ°ΠΏΠΊΠ΅ res я Π·Π°Π±Π»Π°Π³ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ создал ΠΏΠΎΠ΄ΠΏΠ°ΠΏΠΊΡƒ drawable ΠΈ Β«Π·Π°ΠΊΠΈΠ½ΡƒΠ»Β» Ρ‚ΡƒΠ΄Π° Π»ΠΎΠ³ΠΎΡ‚ΠΈΠΏ, Π° Π·Π°Ρ‚Π΅ΠΌ просто ΡƒΠΊΠ°Π·Π°Π» ImageView ΠΏΡƒΡ‚ΡŒ. Π›Π΅Π³ΠΊΠΎ? По ΠΌΠ½Π΅ Ρ‚Π°ΠΊ ΠΎΡ‡Π΅Π½ΡŒ.

import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.TextView;
import android.widget.Button;
import java.io.InputStreamReader;
import java.net.URL;
import java.net.URLConnection;
import java.util.regex.*;

public class UfaTermometr extends Activity
<

@Override
public void onCreate(Bundle savedInstanceState)
<
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
final Button button = (Button) findViewById(R.id.refrbutton);
button.setOnClickListener( new Button.OnClickListener() <
public void onClick(View v) // ΠΊΠ»ΠΈΠΊ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡƒ
<
RefreshTemper();
>
>);

RefreshTemper(); // ΠΏΡ€ΠΈ запускС Π³Ρ€ΡƒΠ·ΠΈΠΌ Ρ‚Π΅ΠΌΠΏΠ΅Ρ€Π°Ρ‚ΡƒΡ€Ρƒ сразу
>;
//—————————————————————-
public String GetTemper(String urlsite) // фукция Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ Ρ‚Π΅ΠΌΠΏΠ΅Ρ€Π°Ρ‚ΡƒΡ€Ρ‹
<
String matchtemper = «» ;
try
<
// Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠ° страницы
URL url = new URL(urlsite);
URLConnection conn = url.openConnection();
InputStreamReader rd = new InputStreamReader(conn.getInputStream());
StringBuilder allpage = new StringBuilder();
int n = 0;
char [] buffer = new char [40000];
while (n >= 0)
<
n = rd.read(buffer, 0, buffer.length);
if (n > 0)
<
allpage.append(buffer, 0, n);
>
>
// Ρ€Π°Π±ΠΎΡ‚Π°Π΅ΠΌ с рСгулярками
final Pattern pattern = Pattern.compile
( » [^-+0]+([-+0-9]+)[^ [^(Π°-яА-ЯёЁa-zA-Z0-9)]+([Π°-яА-ЯёЁa-zA-Z ]+)» );
Matcher matcher = pattern.matcher(allpage.toString());
if (matcher.find())
<
matchtemper = matcher.group(1);
>
return matchtemper;
>
catch (Exception e)
<

>
return matchtemper;
>;
//—————————————————————-
public void RefreshTemper()
<
final TextView tTemper = (TextView) findViewById(R.id.temper);
String bashtemp = «» ;
bashtemp = GetTemper( Β«be.bashkirenergo.ru/weather/ufaΒ» );
tTemper.setText(bashtemp.concat( «Β°» )); // ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Ρ‚Π΅ΠΌΠΏΠ΅Ρ€Π°Ρ‚ΡƒΡ€Ρ‹
>;
>
ПослС Ρ‚ΠΎΠ³ΠΎ ΠΊΠ°ΠΊ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ написано, ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠΆΠ΅ Π΅Π³ΠΎ ΠΎΡ‚Π»Π°ΠΆΠΈΠ²Π°Ρ‚ΡŒ ΠΈ Ρ‚Π΅ΡΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ.

Запуск ΠΈ тСстированиС прилоТСния

ВспоминаСм ΠΏΡ€ΠΎ Π½Π°ΡˆΡƒ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΡƒΡŽ ΠΌΠ°ΡˆΠΈΠ½Ρƒ ΠΈ запускаСм ΠΏΡ€ΠΈΠ²Ρ‹Ρ‡Π½ΠΎΠΉ ΠΊΠ½ΠΎΠΏΠΊΠΎΠΉ ΠΈΠ»ΠΈ мСнюшкой Run β†’ Run

Π’ΠΎΡ‚ Ρ‚Π°ΠΊΡƒΡŽ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½Ρƒ ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ Π·Π°Ρ‚Π΅ΠΌ ΡΠΎΠ·Π΅Ρ€Ρ†Π°Ρ‚ΡŒ:

ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄ Π½Π° java Π½Π° Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄ Π½Π° java Π½Π° Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄ Π½Π° java Π½Π° Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄ Π½Π° java Π½Π° Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄ Π½Π° java Π½Π° Π°Π½Π΄Ρ€ΠΎΠΈΠ΄

Π—Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅

Π’ Π·Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΈ Ρ…ΠΎΡ‚Π΅Π»ΠΎΡΡŒ Π±Ρ‹ ΡΠΊΠ°Π·Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ бСзусловно Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ для Android приятна, достаточно проста ΠΈ интСрСсна. ΠšΠΎΠ½Π΅Ρ‡Π½ΠΎ, ΠΌΡ‹ рассмотрСли лишь Π²Π΅Ρ€Ρ…ΡƒΡˆΠΊΡƒ айсбСрга, Π½ΠΎ я надСюсь, Ρ‡Ρ‚ΠΎ Π² ΡƒΠΌΠ°Ρ… Ρ‚Π΅Ρ… ΠΈΠ· вас, ΠΊΡ‚ΠΎ Ρ€Π°Π½ΡŒΡˆΠ΅ Π½Π΅ ΠΏΡ€ΠΎΠ±ΠΎΠ²Π°Π» Π΄Π΅Π»Π°Ρ‚ΡŒ Π½ΠΈΡ‡Π΅Π³ΠΎ ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎΠ³ΠΎ Β«Π·Π°Π³ΠΎΡ€Π΅Π»Π°ΡΡŒ Π»Π°ΠΌΠΏΠΎΡ‡ΠΊΠ°Β» ΠΈ Π²ΠΏΠΎΠ»Π½Π΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, Ρ‡Ρ‚ΠΎ ΠΊΠΎΠ³Π΄Π°-Ρ‚ΠΎ вашим ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ Π±ΡƒΠ΄ΡƒΡ‚ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΌΠΈΠ»Π»ΠΈΠΎΠ½Ρ‹.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊΠΈ, ссылки

UPD: УстранСниС Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Ρ… ошибок

ERROR: Unable to open class file C:\workspace\Test\gen\com\example\test\R.java: No such file or directory

emulator: ERROR: no search paths found in this AVD’s configuration. Weird, the AVD’s config.ini file is malformed. Try re-creating it

β€” это слСдствиС Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ Ρƒ Вас ΠΊΠΈΡ€ΠΈΠ»Π»ΠΈΡ†Π° Π² ΠΈΠΌΠ΅Π½ΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ. Π Π΅ΡˆΠ°Π΅Ρ‚ΡΡ: ΠΈΠ΄Π΅ΠΌ Π² ΠšΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€ β†’ Бвойства систСмы β†’ Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ систСмы β†’ ΠŸΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ срСды. Π‘ΠΎΠ·Π΄Π°Π΅ΠΌ Π½ΠΎΠ²ΡƒΡŽ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ с ΠΈΠΌΠ΅Π½Π΅ΠΌ ANDROID_SDK_HOME ΠΈ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ – ΠΏΡƒΡ‚Π΅ΠΌ, Π³Π΄Π΅ находится ΠΏΠ°ΠΏΠΊΠ° AVD (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, C:\Android\). Π‘ΠΎΠ·Π΄Π°Π΅ΠΌ, Π΄Π°Π»Π΅Π΅ ΠΈΡ‰Π΅ΠΌ Ρ‚Π°ΠΌ ΠΆΠ΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ Path, ΠΎΡ‚ΠΊΡ€Ρ‹Π²Π°Π΅ΠΌ ΠΈ Π² ΠΏΠΎΠ»Π΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Ρ‡Π΅Ρ€Π΅Π· Ρ‚ΠΎΡ‡ΠΊΡƒ с запятой добавляСм ΠΏΡƒΡ‚ΡŒ Π΄ΠΎ ΠΏΠ°ΠΏΠΊΠΈ tools Android SDK (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, C:\Android\tools). БохраняСм. ЗапускаСм Eclipse, запускаСм ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ.

UPD 05.10.2011, Π²ΠΎ Ρ‡Ρ‚ΠΎ ΠΏΡ€Π΅Π²Ρ€Π°Ρ‚ΠΈΠ»ΠΎΡΡŒ Π΄Π°Π½Π½ΠΎΠ΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ½ΠΎ Π»ΠΈΡ†Π΅Π·Ρ€Π΅Ρ‚ΡŒ Π½Π° ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… скринах:
ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄ Π½Π° java Π½Π° Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄ Π½Π° java Π½Π° Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄ Π½Π° java Π½Π° Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄ Π½Π° java Π½Π° Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄ Π½Π° java Π½Π° Π°Π½Π΄Ρ€ΠΎΠΈΠ΄

Π­Ρ‚ΠΎ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ развития Ρ‚ΠΎΠΉ самой Π±ΠΎΠ»Π²Π°Π½ΠΊΠΈ, которая Π²Ρ‹ΡˆΠ΅ Π΄Π°Π½Π° Π² качСствС ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°.
Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΈ созданиС Android-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ сайтов

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

ПишСм ΠΏΠ΅Ρ€Π²ΠΎΠ΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ для Android

Π’ любом Π΄Π΅Π»Π΅ самоС слоТноС β€” это Π½Π°Ρ‡Π°Π»ΠΎ. Часто Π±Ρ‹Π²Π°Π΅Ρ‚ тяТСло Π²ΠΎΠΉΡ‚ΠΈ Π² контСкст, с Ρ‡Π΅ΠΌ столкнулся ΠΈ я, Ρ€Π΅ΡˆΠΈΠ² Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ своС ΠΏΠ΅Ρ€Π²ΠΎΠ΅ Android-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅. Настоящая ΡΡ‚Π°Ρ‚ΡŒΡ для Ρ‚Π΅Ρ…, ΠΊΡ‚ΠΎ Ρ…ΠΎΡ‡Π΅Ρ‚ Π½Π°Ρ‡Π°Ρ‚ΡŒ, Π½ΠΎ Π½Π΅ Π·Π½Π°Π΅Ρ‚ с Ρ‡Π΅Π³ΠΎ.

Π‘Ρ‚Π°Ρ‚ΡŒΡ Π·Π°Ρ‚Ρ€ΠΎΠ½Π΅Ρ‚ вСсь Ρ†ΠΈΠΊΠ» Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ прилоТСния. ВмСстС ΠΌΡ‹ напишСм ΠΏΡ€ΠΎΡΡ‚Π΅Π½ΡŒΠΊΡƒΡŽ ΠΈΠ³Ρ€Ρƒ β€œΠšΡ€Π΅ΡΡ‚ΠΈΠΊΠΈ-Нолики” с ΠΎΠ΄Π½ΠΈΠΌ экраном (Π² ОБ Android это называСтся Activity).

ΠžΡ‚ΡΡƒΡ‚ΡΡ‚Π²ΠΈΠ΅ ΠΎΠΏΡ‹Ρ‚Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π½Π° языкС Java Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΡΡ‚Π°Ρ‚ΡŒ прСпятствиСм Π² освоСнии Android. Π’Π°ΠΊ, Π² ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°Ρ… Π½Π΅ Π±ΡƒΠ΄ΡƒΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ спСцифичныС для Java конструкции (ΠΈΠ»ΠΈ ΠΎΠ½ΠΈ Π±ΡƒΠ΄Π΅Ρ‚ ΠΌΠΈΠ½ΠΈΠΌΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Ρ‹ Π½Π° ΡΡ‚ΠΎΠ»ΡŒΠΊΠΎ, Π½Π° сколько это Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ). Если Π’Ρ‹ ΠΏΠΈΡˆΠ΅Ρ‚Π΅, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π½Π° PHP ΠΈ Π·Π½Π°ΠΊΠΎΠΌΡ‹ с ΠΎΡΠ½ΠΎΠ²ΠΎΠΏΠΎΠ»Π°Π³Π°ΡŽΡ‰ΠΈΠΌΠΈ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠ°ΠΌΠΈ Π² Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ ПО, эта ΡΡ‚Π°Ρ‚ΡŒΡ Π±ΡƒΠ΄Π΅Ρ‚ Π²Π°ΠΌ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ»Π΅Π·Π½Π°. Π’ свою ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ, я Π½Π΅ являюсь экспСртом ΠΏΠΎ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ Π½Π° Java, ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€Π΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ исходный ΠΊΠΎΠ΄ Π½Π΅ ΠΏΡ€Π΅Ρ‚Π΅Π½Π΄ΡƒΠ΅Ρ‚ Π½Π° Π»Π΅ΠΉΠ±Π» β€œΠ»ΡƒΡ‡ΡˆΠΈΠ΅ ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π½Π° Java”.

Установка Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Ρ… ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ ΠΈ ΡƒΡ‚ΠΈΠ»ΠΈΡ‚

Π£Ρ‚ΠΈΠ»ΠΈΡ‚Ρ‹ ΡƒΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°ΡŽΡ‚ΡΡ Π² ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΌ Π²Ρ‹ΡˆΠ΅ порядкС. Π‘Ρ‚Π°Π²ΠΈΡ‚ΡŒ всС пСрСчислСнныС IDE смысла Π½Π΅Ρ‚ (Ρ€Π°Π·Π²Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ссли Π’Ρ‹ испытываСтС затруднСния с Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ подходящСй). Π― ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽ IntelliJ IDEA Community Edition, ΠΎΠ΄Π½Ρƒ ΠΈΠ· самых Ρ€Π°Π·Π²ΠΈΡ‚Ρ‹Ρ… Π½Π° Π΄Π°Π½Π½Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ IDE для Java.

Запуск Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ устройства

Запустив AVD Manager ΠΈ установив Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΏΠ°ΠΊΠ΅Ρ‚Ρ‹ (SDK Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… вСрсий), ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΈΡΡ‚ΡƒΠΏΠΈΡ‚ΡŒ ΠΊ созданию Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ устройства с Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹ΠΌΠΈ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°ΠΌΠΈ. Π Π°Π·ΠΎΠ±Ρ€Π°Ρ‚ΡŒΡΡ Π² интСрфСйсС Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΡΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Ρ‚Ρ€ΡƒΠ΄Π°.

ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄ Π½Π° java Π½Π° Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄ Π½Π° java Π½Π° Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄ Π½Π° java Π½Π° Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄ Π½Π° java Π½Π° Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄ Π½Π° java Π½Π° Π°Π½Π΄Ρ€ΠΎΠΈΠ΄

Бписок устройств

ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄ Π½Π° java Π½Π° Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄ Π½Π° java Π½Π° Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄ Π½Π° java Π½Π° Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄ Π½Π° java Π½Π° Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄ Π½Π° java Π½Π° Π°Π½Π΄Ρ€ΠΎΠΈΠ΄

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°

МнС всСгда Π½Π΅ тСрпится ΠΏΡ€ΠΈΡΡ‚ΡƒΠΏΠΈΡ‚ΡŒ ΠΊ Ρ€Π°Π±ΠΎΡ‚Π΅, минимизируя ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ мСроприятия, ΠΊ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ относится созданиС ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° Π² IDE, особСнно, ΠΊΠΎΠ³Π΄Π° ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ ΡƒΡ‡Π΅Π±Π½Ρ‹ΠΉ ΠΈ Π½Π° ΠΏΡ€ΠΎΠ΄Π°ΠΊΡˆΠ½ Π½Π΅ ΠΏΡ€Π΅Ρ‚Π΅Π½Π΄ΡƒΠ΅Ρ‚.

Π˜Ρ‚Π°ΠΊ, File->New Project:

ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄ Π½Π° java Π½Π° Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄ Π½Π° java Π½Π° Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄ Π½Π° java Π½Π° Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄ Π½Π° java Π½Π° Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄ Π½Π° java Π½Π° Π°Π½Π΄Ρ€ΠΎΠΈΠ΄

ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄ Π½Π° java Π½Π° Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄ Π½Π° java Π½Π° Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄ Π½Π° java Π½Π° Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄ Π½Π° java Π½Π° Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄ Π½Π° java Π½Π° Π°Π½Π΄Ρ€ΠΎΠΈΠ΄

ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄ Π½Π° java Π½Π° Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄ Π½Π° java Π½Π° Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄ Π½Π° java Π½Π° Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄ Π½Π° java Π½Π° Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄ Π½Π° java Π½Π° Π°Π½Π΄Ρ€ΠΎΠΈΠ΄

ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄ Π½Π° java Π½Π° Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄ Π½Π° java Π½Π° Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄ Π½Π° java Π½Π° Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄ Π½Π° java Π½Π° Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄ Π½Π° java Π½Π° Π°Π½Π΄Ρ€ΠΎΠΈΠ΄

ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄ Π½Π° java Π½Π° Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄ Π½Π° java Π½Π° Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄ Π½Π° java Π½Π° Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄ Π½Π° java Π½Π° Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄ Π½Π° java Π½Π° Π°Π½Π΄Ρ€ΠΎΠΈΠ΄

ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄ Π½Π° java Π½Π° Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄ Π½Π° java Π½Π° Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄ Π½Π° java Π½Π° Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄ Π½Π° java Π½Π° Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄ Π½Π° java Π½Π° Π°Π½Π΄Ρ€ΠΎΠΈΠ΄

ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄ Π½Π° java Π½Π° Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄ Π½Π° java Π½Π° Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄ Π½Π° java Π½Π° Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄ Π½Π° java Π½Π° Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄ Π½Π° java Π½Π° Π°Π½Π΄Ρ€ΠΎΠΈΠ΄

По Π½Π°ΠΆΠ°Ρ‚ΠΈΡŽ ΠΊΠ½ΠΎΠΏΠΊΠΈ F6 ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ собСрСтся, откомпилируСтся ΠΈ запустится Π½Π° Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠΌ дСвайсС.

Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π° ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°

На ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰Π΅ΠΌ ΡΠΊΡ€ΠΈΠ½ΡˆΠΎΡ‚Π΅ Π²ΠΈΠ΄Π½Π° структура ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°. Π’Π°ΠΊ ΠΊΠ°ΠΊ Π² этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΌΡ‹ прСслСдуСм сугубо практичСскиС Ρ†Π΅Π»ΠΈ, заострим Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ лишь Π½Π° Ρ‚Π΅Ρ… ΠΏΠ°ΠΏΠΊΠ°Ρ…, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π±ΡƒΠ΄Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π² процСссС Ρ€Π°Π±ΠΎΡ‚Ρ‹. Π­Ρ‚ΠΎ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΈ: gen, res ΠΈ src.

Π’ ΠΏΠ°ΠΏΠΊΠ΅ gen находятся Ρ„Π°ΠΉΠ»Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΡƒΡŽΡ‚ΡΡ автоматичСски ΠΏΡ€ΠΈ сборкС ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°. Π’Ρ€ΡƒΡ‡Π½ΡƒΡŽ ΠΈΡ… ΠΌΠ΅Π½ΡΡ‚ΡŒ нСльзя.

Папка res ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π° для хранСния рСсурсов, Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠΈ, тСксты (Π² Ρ‚ΠΎΠΌ числС ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄Ρ‹), значСния ΠΏΠΎ-ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ, ΠΌΠ°ΠΊΠ΅Ρ‚Ρ‹ (layouts).

src β€” это ΠΏΠ°ΠΏΠΊΠ° Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€ΠΎΠΈΡΡ…ΠΎΠ΄ΠΈΡ‚ΡŒ основная Ρ‡Π°ΡΡ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρ‹, ΠΈΠ±ΠΎ Ρ‚ΡƒΡ‚ хранятся Ρ„Π°ΠΉΠ»Ρ‹ с исходными тСкстами нашСй ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹.

ΠŸΠ΅Ρ€Π²Ρ‹Π΅ строки

Как Ρ‚ΠΎΠ»ΡŒΠΊΠΎ создаСтся Activity (экран прилоТСния), вызываСтся ΠΌΠ΅Ρ‚ΠΎΠ΄ onCreate(). IDE Π·Π°ΠΏΠΎΠ»Π½ΠΈΠ»Π° Π΅Π³ΠΎ 2 строчками:

ΠœΠ΅Ρ‚ΠΎΠ΄ setContentView (Ρ€Π°Π²Π½ΠΎΡΠΈΠ»ΡŒΠ½ΠΎ this.setContentView) устанавливаСт xml-ΠΌΠ°ΠΊΠ΅Ρ‚ для Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π³ΠΎ экрана. Π”Π°Π»Π΅Π΅ xml-ΠΌΠ°ΠΊΠ΅Ρ‚Ρ‹ Π±ΡƒΠ΄Π΅ΠΌ Π½Π°Π·Ρ‹Π²Π°Ρ‚ΡŒ Β«layoutΒ», Π° экраны β€” Β«ActivityΒ». Layout Π² ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ Π±ΡƒΠ΄Π΅Ρ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ:

Для этого прилоТСния идСально ΠΏΠΎΠ΄ΠΎΠΉΠ΄Π΅Ρ‚ TableLayout. Id ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΈΡΠ²ΠΎΠΈΡ‚ΡŒ Π»ΡŽΠ±ΠΎΠΌΡƒ рСсурсу. Π’ Π΄Π°Π½Π½ΠΎΠΌ случаС, TableLayout присвоСн ΠŸΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° findViewById() ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ доступ ΠΊ Π²ΠΈΠ΄Ρƒ:

Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΌΠ΅Ρ‚ΠΎΠ΄ buildGameField(). Для этого трСбуСтся ΡΠ³Π΅Π½Π΅Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠΎΠ»Π΅ Π² Π²ΠΈΠ΄Π΅ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹. Π­Ρ‚ΠΈΠΌ Π±ΡƒΠ΄Π΅Ρ‚ Π·Π°Π½ΠΈΠΌΠ°Ρ‚ΡŒΡΡ класс Game. Π‘Π½Π°Ρ‡Π°Π»Π° Π½ΡƒΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ класс Square для ячССк ΠΈ класс Player, ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ Π±ΡƒΠ΄ΡƒΡ‚ Π·Π°ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ эти ячСйки.

Square.java

Player.java

ВсС классы нашСго прилоТСния находятся Π² ΠΏΠ°ΠΏΠΊΠ΅ src.

Game.java

Π˜Π½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΡ Game Π² конструкторС KrestikinolikiActivity.

ΠœΠ΅Ρ‚ΠΎΠ΄ buildGameField() класса KrestikinolikiActivity. Он динамичСски добавляСт строки ΠΈ ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ Π² Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ (ΠΈΠ³Ρ€ΠΎΠ²ΠΎΠ΅ ΠΏΠΎΠ»Π΅):

Π’ строкС 8 создаСтся ΠΎΠ±ΡŠΠ΅ΠΊΡ‚, Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΡŽΡ‰ΠΈΠΉ интСрфСйс View.OnClickListener. Π‘ΠΎΠ·Π΄Π°Π΄ΠΈΠΌ Π²Π»ΠΎΠΆΠ΅Π½Π½Ρ‹ΠΉ класс Listener. Он Π±ΡƒΠ΄Π΅Ρ‚ Π²ΠΈΠ΄Π΅Π½ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΈΠ· KrestikinolikiActivity.

ΠžΡΡ‚Π°Π»ΠΎΡΡŒ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π»ΠΎΠ³ΠΈΠΊΡƒ ΠΈΠ³Ρ€Ρ‹.

ΠžΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ побСдитСля

К. О. подсказываСт, Ρ‡Ρ‚ΠΎ Π² крСстики-Π½ΠΎΠ»ΠΈΠΊΠΈ Π²Ρ‹ΠΈΡ€Ρ‹Π²Π°Π΅Ρ‚ Ρ‚ΠΎΡ‚, ΠΊΡ‚ΠΎ выстроСт X ΠΈΠ»ΠΈ O Π² линию Π΄Π»ΠΈΠ½ΠΎΠΉ, Ρ€Π°Π²Π½ΠΎΠΉ Π΄Π»ΠΈΠ½Π΅ поля ΠΏΠΎ-Π²Π΅Ρ€Ρ‚ΠΈΠΊΠ°Π»ΠΈ, ΠΈΠ»ΠΈ ΠΏΠΎ-Π³ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»ΠΈ, ΠΈΠ»ΠΈ ΠΏΠΎ-Π΄ΠΈΠ°Π³ΠΎΠ½Π°Π»ΠΈ. ΠŸΠ΅Ρ€Π²Π°Ρ ΠΌΡ‹ΡΠ»ΡŒ, которая ΠΏΡ€ΠΈΡ…ΠΎΠ΄ΠΈΡ‚ Π² Π³ΠΎΠ»ΠΎΠ²Ρƒ β€” это Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ случая. Π”ΡƒΠΌΠ°ΡŽ, Π² этом случаС Ρ…ΠΎΡ€ΠΎΡˆΠΎ ΠΏΠΎΠ΄ΠΎΠΉΠ΄Π΅Ρ‚ ΠΏΠ°Ρ‚Ρ‚Π΅Ρ€Π½ Chain of Responsobility. ΠžΠΏΡ€Π΅Π΄Π΅Π»ΠΈΠΌ интСрфСйс

Π’Π°ΠΊ ΠΊΠ°ΠΊ Game Π½Π°Π΄Π΅Π»Π΅Π½ ΠΎΠ±ΡΠ·Π°Π½Π½ΠΎΡΡ‚ΡŒΡŽ Π²Ρ‹ΡΠ²Π»ΡΡ‚ΡŒ побСдитСля, ΠΎΠ½ Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΠ΅Ρ‚ этот интСрфСйс. Настало врСмя ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹Ρ… «лайнсмСнов», ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΈΠ· ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡΡ‚ΡŒ свою сторону. ВсС ΠΎΠ½ΠΈ Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΠ΅Ρ‚ интСрфСйс WinnerCheckerInterface.

WinnerCheckerHorizontal.java

WinnerCheckerVertical.java

WinnerCheckerDiagonalLeft.java

WinnerCheckerDiagonalRight.java

ΠŸΡ€ΠΎΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΡƒΠ΅ΠΌ ΠΈΡ… Π² конструкторС Game:

ΠŸΠΎΠ±Π΅Π΄ΠΈΡ‚Π΅Π»Ρ провСряСм послС ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Ρ…ΠΎΠ΄Π°. Π”ΠΎΠ±Π°Π²ΠΈΠΌ ΠΊΠΎΠ΄Π° Π² ΠΌΠ΅Ρ‚ΠΎΠ΄ onClick() класса Listener

ΠœΠ΅Ρ‚ΠΎΠ΄ gameOver() Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ Π² 2-Ρ… Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π°Ρ…:

Для Java, gameOver(Player player) ΠΈ gameOver() β€” Ρ€Π°Π·Π½Ρ‹Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹. Π’ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π²ΡˆΠΈΡΡŒ Builder’ΠΎΠΌ Toast.makeText, ΠΌΠΎΠΆΠ½ΠΎ быстро ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΈ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ ΡƒΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΠ΅. refresh() обновляСт состояниС поля:

Π“ΠΎΡ‚ΠΎΠ²ΠΎ! НадСюсь, эта ΡΡ‚Π°Ρ‚ΡŒΡ ΠΏΠΎΠΌΠΎΠ³Π»Π° Π’Π°ΠΌ ΠΎΡΠ²ΠΎΠΈΡ‚ΡŒΡΡ Π² ΠΌΠΈΡ€Π΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΠΎΠ΄ OS Android. Π‘Π»Π°Π³ΠΎΠ΄Π°Ρ€ΡŽ Π·Π° Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅!

Π’ΠΈΠ΄Π΅ΠΎ Π³ΠΎΡ‚ΠΎΠ²ΠΎΠ³ΠΎ прилоТСния

PS: ΡΡ‚Π°Ρ‚ΡŒΡ Π±Ρ‹Π»Π° ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½Π° ΠΏΠΎ ΠΏΡ€ΠΎΡΡŒΠ±Π΅ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ‚ΠΎΡ€ΠΎΠ² этого поста.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

Π˜Π·ΡƒΡ‡Π°Π΅ΠΌ Java для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ для Android: Π²Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π² Java

Π”Π°Π²Π°ΠΉΡ‚Π΅ Π½Π°Ρ‡Π½Π΅ΠΌ

Π§Ρ‚ΠΎ касаСтся прСдпосылок, ΠΌΡ‹ ΠΏΡ€Π΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΠΌ, Ρ‡Ρ‚ΠΎ Π²Ρ‹ ΠΏΠΎΠ½ΠΈΠΌΠ°Π΅Ρ‚Π΅, ΠΊΠ°ΠΊ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ (Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, Π½Π° PHP, ΠΈΠ»ΠΈ Visual Basic ΠΈΠ»ΠΈ C ++), Π½ΠΎ Π²Ρ‹ Π½Π΅ Π·Π½Π°ΠΊΠΎΠΌΡ‹ со спСцификой программирования Π½Π° языкС Java. ΠœΡ‹ Π½Π΅ собираСмся ΡƒΡ‡ΠΈΡ‚ΡŒ вас ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ; ΠΌΡ‹ собираСмся ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Π²Π°ΠΌ Ρ‡Π΅Ρ‚ΠΊΠΈΠ΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Ρ… конструкций ΠΈ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠΎΠ² языка Java, ΡƒΠΊΠ°Π·Π°Π² Π½Π° Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ совСты ΠΈ Ρ‚Ρ€ΡŽΠΊΠΈ ΠΊΠ°ΡΠ°Ρ‚Π΅Π»ΡŒΠ½ΠΎ Android.

Π§Ρ‚ΠΎ Π²Π°ΠΌ понадобится

ВСхничСски Π²Π°ΠΌ Π½Π΅ Π½ΡƒΠΆΠ½Ρ‹ ΠΊΠ°ΠΊΠΈΠ΅-Π»ΠΈΠ±ΠΎ инструмСнты для Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡ этого ΡƒΡ€ΠΎΠΊΠ°, Π½ΠΎ Π²Π°ΠΌ навСрняка понадобится для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π½Π° Android.

ΠŸΠΎΠ»Π½Ρ‹Π΅ инструкции ΠΏΠΎ установкС Eclipse (Π²ΠΊΠ»ΡŽΡ‡Π°Ρ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅ΠΌΡ‹Π΅ вСрсии) ΠΈ Android SDK см. На Π²Π΅Π±-сайтС Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ° Android.

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Java?

НСкоторыС ΠΈΠ· основных основных Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ Java:

Android сильно зависит ΠΎΡ‚ этих ΠΎΡΠ½ΠΎΠ²ΠΎΠΏΠΎΠ»Π°Π³Π°ΡŽΡ‰ΠΈΡ… ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠΎΠ² Java. Android SDK Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ Π² сСбя мноТСство стандартных Java-Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ (Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ структуры Π΄Π°Π½Π½Ρ‹Ρ…, матСматичСскиС Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ, графичСскиС Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ, сСтСвыС Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ ΠΈ всС ΠΎΡΡ‚Π°Π»ΡŒΠ½ΠΎΠ΅, Ρ‡Ρ‚ΠΎ Π²Π°ΠΌ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠ½Π°Π΄ΠΎΠ±ΠΈΡ‚ΡŒΡΡ), Π° Ρ‚Π°ΠΊΠΆΠ΅ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Π΅ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ Android, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎΠΌΠΎΠ³ΡƒΡ‚ Π²Π°ΠΌ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ ΠΏΠΎΡ‚Ρ€ΡΡΠ°ΡŽΡ‰ΠΈΠ΅ прилоТСния для Android.

ΠŸΠΎΡ‡Π΅ΠΌΡƒ Java Π»Π΅Π³ΠΊΠΎ ΠΈΠ·ΡƒΡ‡ΠΈΡ‚ΡŒ?

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

Если Π²Ρ‹ исходитС ΠΈΠ· Ρ‚Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½ΠΎΠ³ΠΎ программирования, Ρ‚Π°ΠΊΠΎΠ³ΠΎ ΠΊΠ°ΠΊ C ΠΈΠ»ΠΈ C ++, Π²Ρ‹ Π½Π°ΠΉΠ΄Π΅Ρ‚Π΅ синтаксис Java ΠΎΡ‡Π΅Π½ΡŒ ΠΏΠΎΡ…ΠΎΠΆΠΈΠΌ. Если Π²Ρ‹ этого Π½Π΅ сдСлаСтС, Ρ‚ΠΎ ΡƒΡΠΏΠΎΠΊΠΎΠΉΡ‚Π΅ΡΡŒ, зная, Ρ‡Ρ‚ΠΎ Π²Ρ‹ Π²Ρ‹Π±Ρ€Π°Π»ΠΈ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· самых простых языков для изучСния. Π’Ρ‹ скоро Π½Π°Ρ‡Π½Π΅Ρ‚Π΅ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ.

НаконСц, Java являСтся ΠΎΠ΄Π½ΠΈΠΌ ΠΈΠ· самых Ρ‡ΠΈΡ‚Π°Π΅ΠΌΡ‹Ρ… Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊΠΎΠΌ языков, ΠΏΠΎΠ΄ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ ΠΌΡ‹ ΠΏΠΎΠ΄Ρ€Π°Π·ΡƒΠΌΠ΅Π²Π°Π΅ΠΌ, Ρ‡Ρ‚ΠΎ Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π½ΠΈΡ‡Π΅Π³ΠΎ Π½Π΅ Π·Π½Π°Π΅Ρ‚ ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ, ΠΌΠΎΠΆΠ΅Ρ‚ часто ΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Π½Π° Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Java-ΠΊΠΎΠ΄ ΠΈ ΠΏΠΎ ΠΊΡ€Π°ΠΉΠ½Π΅ΠΉ ΠΌΠ΅Ρ€Π΅ ΠΏΠΎΠ΄ΠΎΠ·Ρ€Π΅Π²Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΎΠ½ Π΄Π΅Π»Π°Π΅Ρ‚. Рассмотрим ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€:

Если Π²Ρ‹ просто ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Π΅Ρ‚Π΅ ΠΊΠΎΠ΄ вслух, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π² Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ стСпСни ΡΠΊΠ°Π·Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ этот Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚ ΠΊΠΎΠ΄Π° Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚. БущСствуСт ΠΎΠ΄Π½Π° пСрСмСнная, называСмая символом. Если пСрСмСнная символа Ρ€Π°Π²Π½Π° Π±ΡƒΠΊΠ²Π΅ a, ΠΌΡ‹ сдСлаСм Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ (Π²Ρ‹Π·ΠΎΠ²Π΅ΠΌ ΠΌΠ΅Ρ‚ΠΎΠ΄ doSomething (), ΠΈΠ»ΠΈ Π² Π΄Ρ€ΡƒΠ³ΠΎΠΌ случаС (вызывая ΠΌΠ΅Ρ‚ΠΎΠ΄ doSomethingElse ().

ΠŸΠΎΡ‡Π΅ΠΌΡƒ Π²Π°ΠΆΠ½Π° Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡ‚ΡŒ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹?

Π‘ΠΎ ΠΌΠ½ΠΎΠ³ΠΈΠΌΠΈ языками программирования Π²Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ компилятор, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠΌΠ΅Π½ΡŒΡˆΠΈΡ‚ΡŒ ΠΊΠΎΠ΄ Π½Π° ΠΌΠ°ΡˆΠΈΠ½Π½Ρ‹ΠΉ язык, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠ½ΡΡ‚ΡŒ устройство. Π₯отя это Ρ…ΠΎΡ€ΠΎΡˆΠΎ, Ρ€Π°Π·Π½Ρ‹Π΅ устройства ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ Ρ€Π°Π·Π½Ρ‹Π΅ ΠΌΠ°ΡˆΠΈΠ½Π½Ρ‹Π΅ языки. Π­Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ Π²Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ваши прилоТСния для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ устройства ΠΈΠ»ΠΈ машинного языка, Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ словами, ваш ΠΊΠΎΠ΄ Π½Π΅ ΠΎΡ‡Π΅Π½ΡŒ ΠΏΠΎΡ€Ρ‚Π°Ρ‚ΠΈΠ²Π΅Π½. Π­Ρ‚ΠΎ Π½Π΅ относится ΠΊ Java. ΠšΠΎΠΌΠΏΠΈΠ»ΡΡ‚ΠΎΡ€Ρ‹ Java ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΡƒΡŽΡ‚ ваш ΠΊΠΎΠ΄ ΠΈΠ· чСловСчСских Ρ‡ΠΈΡ‚Π°Π΅ΠΌΡ‹Ρ… исходных Ρ„Π°ΠΉΠ»ΠΎΠ² Java Π² Ρ‚Π°ΠΊ Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΡ‹ΠΉ Β«Π±Π°ΠΉΡ‚-ΠΊΠΎΠ΄Β» Π² ΠΌΠΈΡ€Π΅ Java. Они ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚ΠΈΡ€ΡƒΡŽΡ‚ΡΡ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠΉ машиной Java, которая Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Ρ‚Π°ΠΊ ΠΆΠ΅, ΠΊΠ°ΠΊ физичСский процСссор взаимодСйствуСт с ΠΌΠ°ΡˆΠΈΠ½Π½Ρ‹ΠΌ ΠΊΠΎΠ΄ΠΎΠΌ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ скомпилированный ΠΊΠΎΠ΄. Π₯отя ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚ΡŒΡΡ, Ρ‡Ρ‚ΠΎ это нСэффСктивно, Π±Ρ‹Π»ΠΎ сдСлано ΠΌΠ½ΠΎΠ³ΠΎ усилий, Ρ‡Ρ‚ΠΎΠ±Ρ‹ этот процСсс Π±Ρ‹Π» ΠΎΡ‡Π΅Π½ΡŒ быстрым ΠΈ эффСктивный. Π­Ρ‚ΠΈ усилия ΠΎΠΊΡƒΠΏΠΈΠ»ΠΈΡΡŒ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Java, ΠΊΠ°ΠΊ ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ, уступаСт Ρ‚ΠΎΠ»ΡŒΠΊΠΎ C/C++ Π² ΠΎΠ±Ρ‰ΠΈΡ… сравнСниях ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ языка.

ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Android Π·Π°ΠΏΡƒΡΠΊΠ°ΡŽΡ‚ΡΡ Π½Π° ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠΉ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠΉ машинС ΠΏΠΎΠ΄ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ Dalvik VM. Π₯отя свСдСния ΠΎΠ± этой Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠΉ машинС Π½Π΅ Π²Π°ΠΆΠ½Ρ‹ для срСднСго Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°, ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ ΠΏΠΎΠ΄ΡƒΠΌΠ°Ρ‚ΡŒ ΠΎ VM Dalvik ΠΊΠ°ΠΊ ΠΎ ΠΏΡƒΠ·Ρ‹Ρ€Π΅, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ вашС ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ для Android, позволяя Π²Π°ΠΌ Π½Π΅ Π±Π΅ΡΠΏΠΎΠΊΠΎΠΈΡ‚ΡŒΡΡ ΠΎ Ρ‚ΠΎΠΌ, являСтся Π»ΠΈ устройство Motorola Droid, HTC Evo, ΠΈΠ»ΠΈ новСйший тостСр ΠΏΠΎΠ΄ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ Android. Π’Π°ΠΌ всС Ρ€Π°Π²Π½ΠΎ, ΠΏΠΎΠΊΠ° устройство Dalvik VM Π΄Ρ€ΡƒΠΆΠ΅Π»ΡŽΠ±Π½ΠΎΠ΅, ΠΈ это Π·Π°Π΄Π°Ρ‡Π° производитСля устройства, Π° Π½Π΅ ваша.

ΠŸΠΎΡ‡Π΅ΠΌΡƒ Java бСзопасСн?

Π”Π°Π²Π°ΠΉΡ‚Π΅ рассмотрим эту ΠΌΡ‹ΡΠ»ΡŒ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ Π³Π»ΡƒΠ±ΠΆΠ΅. ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ прилоТСния Java Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ Π² ΠΎΠ±ΠΎΠ»ΠΎΡ‡ΠΊΠ΅, которая являСтся Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠΉ машиной, ΠΎΠ½ΠΈ ΠΈΠ·ΠΎΠ»ΠΈΡ€ΠΎΠ²Π°Π½Ρ‹ ΠΎΡ‚ Π±Π°Π·ΠΎΠ²ΠΎΠ³ΠΎ устройства. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Π°Ρ машина ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΠ½ΠΊΠ°ΠΏΡΡƒΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ, ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ ΠΈ ΡƒΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ΠΌ ΠΊΠΎΠ΄Π° бСзопасным ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ ΠΏΠΎ ΡΡ€Π°Π²Π½Π΅Π½ΠΈΡŽ с языками, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ нСпосрСдствСнно с ΠΌΠ°ΡˆΠΈΠ½Π½Ρ‹ΠΌ ΠΊΠΎΠ΄ΠΎΠΌ. ΠŸΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° Android Π΄Π΅Π»Π°Π΅Ρ‚ шаг Π²ΠΏΠ΅Ρ€Π΅Π΄. КаТдоС ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ для Android Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π² ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмС (Π½Π° Π±Π°Π·Π΅ Linux), ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ Π΄Ρ€ΡƒΠ³ΡƒΡŽ ΡƒΡ‡Π΅Ρ‚Π½ΡƒΡŽ запись ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ ΠΈ Π² своСм собствСнном экзСмплярС Dalvik VM. ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Android Ρ‚Ρ‰Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΠΈΡ€ΡƒΡŽΡ‚ΡΡ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмой ΠΈ Π·Π°ΠΊΡ€Ρ‹Π²Π°ΡŽΡ‚ΡΡ, Ссли ΠΎΠ½ΠΈ Π½Π΅ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ слишком Π±ΠΎΠ»ΡŒΡˆΡƒΡŽ Π²Ρ‹Ρ‡ΠΈΡΠ»ΠΈΡ‚Π΅Π»ΡŒΠ½ΡƒΡŽ ΠΌΠΎΡ‰Π½ΠΎΡΡ‚ΡŒ, становятся нСвосприимчивыми, рСсурсы ΠΎΡ‚Ρ…ΠΎΠ΄ΠΎΠ² ΠΈ Ρ‚. Π΄.). ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ Π²Π°ΠΆΠ½ΠΎ Ρ€Π°Π·Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ прилоТСния, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΡΠ²Π»ΡΡŽΡ‚ΡΡ ΡΡ‚Π°Π±ΠΈΠ»ΡŒΠ½Ρ‹ΠΌΠΈ ΠΈ ΠΎΡ‚Π·Ρ‹Π²Ρ‡ΠΈΠ²Ρ‹ΠΌΠΈ. ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΌΠΎΠ³ΡƒΡ‚ ΠΎΠ±Ρ‰Π°Ρ‚ΡŒΡΡ Π΄Ρ€ΡƒΠ³ с Π΄Ρ€ΡƒΠ³ΠΎΠΌ с использованиСм Ρ‡Π΅Ρ‚ΠΊΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»ΠΎΠ².

ΠšΠΎΠΌΠΏΠΈΠ»ΡΡ†ΠΈΡ ΠΊΠΎΠ΄Π°

Как ΠΈ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ языки, Java ΠΏΠΎ-ΠΏΡ€Π΅ΠΆΠ½Π΅ΠΌΡƒ являСтся скомпилированным языком, хотя ΠΎΠ½ Π½Π΅ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΡƒΠ΅Ρ‚ вСсь ΠΏΡƒΡ‚ΡŒ Π΄ΠΎ машинного ΠΊΠΎΠ΄Π°. Π­Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ Π²Ρ‹, Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ, Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ваши ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Ρ‹ Android ΠΈ ΡƒΠΏΠ°ΠΊΠΎΠ²Π°Ρ‚ΡŒ ΠΈΡ… для развСртывания Π½Π° устройства. Π‘Ρ€Π΅Π΄Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Eclipse (ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΠ°Ρ с ΠΏΠ»Π°Π³ΠΈΠ½ΠΎΠΌ для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Android) Π΄Π΅Π»Π°Π΅Ρ‚ это довольно Π±Π΅Π·Π±ΠΎΠ»Π΅Π·Π½Π΅Π½Π½Ρ‹ΠΌ процСссом. Π’ Eclipse автоматичСская компиляция часто Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ. Π­Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ€Π°Π·, ΠΊΠΎΠ³Π΄Π° Π²Ρ‹ сохраняСтС Ρ„Π°ΠΉΠ» ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°, Eclipse ΠΏΠ΅Ρ€Π΅ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΡƒΠ΅Ρ‚ измСнСния для вашСго ΠΏΠ°ΠΊΠ΅Ρ‚Π° ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. Π’Ρ‹ сразу Π²ΠΈΠ΄ΠΈΡ‚Π΅ ошибки компиляции. Eclipse Ρ‚Π°ΠΊΠΆΠ΅ ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚ΠΈΡ€ΡƒΠ΅Ρ‚ Java ΠΏΠΎ ΠΌΠ΅Ρ€Π΅ Π²Π²ΠΎΠ΄Π°, обСспСчивая ΡƒΠ΄ΠΎΠ±Π½ΡƒΡŽ окраску ΠΈ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄Π°, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‰ΠΈΠ΅ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ Ρ‚ΠΈΠΏΡ‹ ошибок, ΠΊΠΎΠ³Π΄Π° Π²Ρ‹ ΠΈΠ΄Π΅Ρ‚Π΅. Часто Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Ρ‰Π΅Π»ΠΊΠ½ΡƒΡ‚ΡŒ ΠΏΠΎ ошибкС, ΠΈ Eclipse автоматичСски исправит ΠΎΠΏΠ΅Ρ‡Π°Ρ‚ΠΊΡƒ ΠΈΠ»ΠΈ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ ΠΈΠΌΠΏΠΎΡ€Ρ‚Π° ΠΈΠ»ΠΈ прСдоставит Π²Π°ΠΌ Π·Π°Π³Π»ΡƒΡˆΠΊΡƒ для ΠΌΠ΅Ρ‚ΠΎΠ΄Π°, сохраняя мноТСство Π²Π²ΠΎΠ΄Π°.

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ язык программирования?

Π˜Ρ‚Π°ΠΊ, Π³Π΄Π΅ этот ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ Dog ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½? Ну, здСсь Π½Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ Π½Π°Ρ‡Π°Ρ‚ΡŒ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Ρ„ΡƒΠ½Π΄Π°ΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½Ρ‹Ρ… ΡΡ‚Ρ€ΠΎΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… Π±Π»ΠΎΠΊΠΎΠ² языка программирования Java. Класс прСдоставляСт ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ для ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, Π΅ΡΡ‚ΡŒ класс Dog Π³Π΄Π΅-Π½ΠΈΠ±ΡƒΠ΄ΡŒ, ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹ΠΉ Π²Π°ΠΌΠΈ ΠΈΠ»ΠΈ Π² ΠΊΠ°ΠΊΠΎΠΉ-Ρ‚ΠΎ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ΅ Π³Π΄Π΅-Π½ΠΈΠ±ΡƒΠ΄ΡŒ. Π’ΠΎΠΎΠ±Ρ‰Π΅ говоря, класс Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ Π² собствСнном Ρ„Π°ΠΉΠ»Π΅ с ΠΈΠΌΠ΅Π½Π΅ΠΌ Ρ„Π°ΠΉΠ»Π°, ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΌ ΠΈΠΌΠ΅Π½ΠΈ класса (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Dog.java). Π‘ΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΈΠ· этого ΠΏΡ€Π°Π²ΠΈΠ»Π°, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ классы, ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Π΅ Π² Π΄Ρ€ΡƒΠ³ΠΈΡ… классах (ΠΊΠΎΠ³Π΄Π° класс ΠΎΠ±ΡŠΡΠ²Π»ΡΠ΅Ρ‚ΡΡ Π²Π½ΡƒΡ‚Ρ€ΠΈ класса, ΠΎΠ½ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ опрСдСляСтся для использования Π² Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΡΠΊΠΎΠΌ классС Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΊΠ°ΠΊ Π²ΡΠΏΠΎΠΌΠΎΠ³Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ класс ΠΈ называСтся Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΠΌ классом).

Если Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΡΡΡ‹Π»Π°Ρ‚ΡŒΡΡ Π½Π° ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ ΠΈΠ· Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ класса, Π²Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ ΠΈΠΌΠΏΠΎΡ€Ρ‚Π° Π² Π½Π°Ρ‡Π°Π»ΠΎ вашСго Ρ„Π°ΠΉΠ»Π° класса, Ρ‚Π°ΠΊ ΠΆΠ΅, ΠΊΠ°ΠΊ Π²Ρ‹ Π±Ρ‹ использовали ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ #include Π½Π° ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠΌ языкС, Ρ‚Π°ΠΊΠΎΠΌ ΠΊΠ°ΠΊ C.

Класс ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ описываСт Π΄Π°Π½Π½Ρ‹Π΅ ΠΈ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°. ПовСдСниС опрСдСляСтся с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² класса. ΠœΠ΅Ρ‚ΠΎΠ΄ являСтся ΠΎΠ±Ρ‰ΠΈΠΌ Ρ‚Π΅Ρ€ΠΌΠΈΠ½ΠΎΠΌ для ΠΏΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π° языкС ООП. МногиС ΠΎΠ±Ρ‰ΠΈΠ΅ классы ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Ρ‹ Π² Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°Ρ… ΠΎΠ±Ρ‰ΠΈΡ… классов, Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ ΠΊΠΎΠΌΠΏΠ»Π΅ΠΊΡ‚Ρ‹ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния (SDK), Ρ‚ΠΎΠ³Π΄Π° ΠΊΠ°ΠΊ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‚ΡΡ Π²Π°ΠΌΠΈ, Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠΌ, Π² Π²Π°ΡˆΠΈΡ… собствСнных цСлях. Π—Π°Ρ‚Π΅ΠΌ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ΅ обСспСчСниС создаСтся с использованиСм ΠΈ ΠΌΠ°Π½ΠΈΠΏΡƒΠ»ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ экзСмплярами ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² ΠΏΠΎ-Ρ€Π°Π·Π½ΠΎΠΌΡƒ.

ΠŸΠΎΠΆΠ°Π»ΡƒΠΉΡΡ‚Π°, ΠΏΠΎΠΉΠΌΠΈΡ‚Π΅, Ρ‡Ρ‚ΠΎ это ΠΎΡ‡Π΅Π½ΡŒ ΠΎΠ±ΠΎΠ±Ρ‰Π΅Π½Π½ΠΎΠ΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ООП. На эту Ρ‚Π΅ΠΌΡƒ написаны Ρ†Π΅Π»Ρ‹Π΅ ΠΊΠ½ΠΈΠ³ΠΈ. На эту Ρ‚Π΅ΠΌΡƒ написаны Ρ†Π΅Π»Ρ‹Π΅ ΠΊΠ½ΠΈΠ³ΠΈ. ВикипСдия ΠΈΠΌΠ΅Π΅Ρ‚ Ρ…ΠΎΡ€ΠΎΡˆΠΈΠΉ ΠΎΠ±Π·ΠΎΡ€ ООП

ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅. Π’ этом ΡƒΡ€ΠΎΠΊΠ΅ ΠΌΡ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ ΠΌΠ½ΠΎΠ³ΠΎ Ρ€Π°Π·Π½Ρ‹Ρ… Ρ‚Π΅Ρ€ΠΌΠΈΠ½ΠΎΠ². БущСствуСт нСсколько способов ΡΡΡ‹Π»Π°Ρ‚ΡŒΡΡ Π½Π° Π΄Π°Π½Π½ΡƒΡŽ ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΡŽ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, супСркласс ΠΏΠΎ ΡΡ€Π°Π²Π½Π΅Π½ΠΈΡŽ с Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΡΠΊΠΈΠΌ классом), Ρ‡Ρ‚ΠΎ сбиваСт с Ρ‚ΠΎΠ»ΠΊΡƒ Ρ‚Π΅Ρ…, ΠΊΡ‚ΠΎ Π½ΠΎΠ²ΠΈΡ‡ΠΎΠΊ Π² ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠΌ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ. Π Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ Ρ€Π°Π·Π½Ρ‹Π΅ Ρ‚Π΅Ρ€ΠΌΠΈΠ½Ρ‹, ΠΈ поэтому ΠΌΡ‹ ΡΡ‚Π°Ρ€Π°Π»ΠΈΡΡŒ ΡƒΠΏΠΎΠΌΠΈΠ½Π°Ρ‚ΡŒ синонимы Ρ‚Π°ΠΌ, Π³Π΄Π΅ это Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ. РСшСниС ΠΎ Ρ‚ΠΎΠΌ, ΠΊΠ°ΠΊΠΈΠ΅ условия Π²Ρ‹ Π±ΡƒΠ΄Π΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ, являСтся Π»ΠΈΡ‡Π½Ρ‹ΠΌ Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ.

ПониманиС наслСдования

Π’ΠΎΡ‚ Π΅Ρ‰Π΅ ΠΎΠ΄Π½Π° ваТная концСпция Java, с ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Π²Ρ‹ ΡΡ‚ΠΎΠ»ΠΊΠ½Π΅Ρ‚Π΅ΡΡŒ: наслСдованиС. ΠŸΡ€ΠΎΡ‰Π΅ говоря, наслСдованиС ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ классы Java (ΠΈ, ΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ, ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹) ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ ΠΎΡ€Π³Π°Π½ΠΈΠ·ΠΎΠ²Π°Π½Ρ‹ Π² ΠΈΠ΅Ρ€Π°Ρ€Ρ…ΠΈΠΈ с Π±ΠΎΠ»Π΅Π΅ Π½ΠΈΠ·ΠΊΠΈΠΌΠΈ, Π±ΠΎΠ»Π΅Π΅ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹ΠΌΠΈ классами Π² ΠΈΠ΅Ρ€Π°Ρ€Ρ…ΠΈΠΈ, Π½Π°ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΈ Ρ‡Π΅Ρ€Ρ‚Ρ‹ ΠΈΠ· Π±ΠΎΠ»Π΅Π΅ высоких, Π±ΠΎΠ»Π΅Π΅ ΠΎΠ±Ρ‰ΠΈΡ… классов.

Π­Ρ‚Π° концСпция Π»ΡƒΡ‡ΡˆΠ΅ всСго ΠΈΠ»Π»ΡŽΡΡ‚Ρ€ΠΈΡ€ΡƒΠ΅Ρ‚ΡΡ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠΌ. Π”Π°Π²Π°ΠΉΡ‚Π΅ притворимся, Ρ‡Ρ‚ΠΎ ΠΌΡ‹ Ρ€Π°Π·Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅ΠΌ Java-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ для ΠΈΠΌΠΈΡ‚Π°Ρ†ΠΈΠΈ Π°ΠΊΠ²Π°Ρ€ΠΈΡƒΠΌΠ°. Π’ этом Π°ΠΊΠ²Π°Ρ€ΠΈΡƒΠΌΠ΅ Π΅ΡΡ‚ΡŒ Ρ€Ρ‹Π±Π°. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ ΠΌΡ‹ ΠΌΠΎΠ³Π»ΠΈ Π±Ρ‹ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ класс для прСдставлСния Ρ€Ρ‹Π±Ρ‹. Π­Ρ‚ΠΎΡ‚ класс, Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΡ‹ΠΉ Fish, ΠΌΠΎΠΆΠ΅Ρ‚ Π²ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ Π² сСбя Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ поля Π΄Π°Π½Π½Ρ‹Ρ… (Ρ‚Π°ΠΊΠΆΠ΅ Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΡ‹Π΅ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Π°ΠΌΠΈ ΠΈΠ»ΠΈ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹ΠΌΠΈ-Ρ‡Π»Π΅Π½Π°ΠΌΠΈ класса) для описания ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Ρ€Ρ‹Π±Ρ‹: Π²ΠΈΠ΄Π°, Ρ†Π²Π΅Ρ‚Π° ΠΈ Ρ€Π°Π·ΠΌΠ΅Ρ€Π°; Π° Ρ‚Π°ΠΊΠΆΠ΅ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π΅Π³ΠΎ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ Π² Π²ΠΈΠ΄Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² (Ρ‚Π°ΠΊΠΆΠ΅ Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΡ‹Ρ… ΠΏΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°ΠΌΠΈ ΠΈΠ»ΠΈ функциями Π² ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π½Ρ‹Ρ… языках), Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ eat (), sleep () ΠΈ makeBabyFish ().

ΠšΠ»Π°ΡΡΡ‹ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ ΠΎΡ€Π³Π°Π½ΠΈΠ·ΠΎΠ²Π°Π½Ρ‹ Π² ΠΈΠ΅Ρ€Π°Ρ€Ρ…ΠΈΠΈ, Π³Π΄Π΅ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄Π½Ρ‹ΠΉ класс (ΠΈΠ»ΠΈ подкласс) Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ всС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π΅Π³ΠΎ Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΡΠΊΠΎΠ³ΠΎ класса (orsuperclass), Π½ΠΎ уточняСт ΠΈ добавляСт ΠΊ Π½ΠΈΠΌ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ Π±ΠΎΠ»Π΅Π΅ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹ΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠ΅ слово extends. Π­Ρ‚ΠΎ называСтся наслСдованиСм.

НапримСр, класс Fish ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ Π΄Π²Π° подкласса: FreshwaterFish ΠΈ SaltwaterFish. Π­Ρ‚ΠΈ подклассы Π±ΡƒΠ΄ΡƒΡ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ всС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ класса Fish, Π½ΠΎ ΠΌΠΎΠ³ΡƒΡ‚ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π½ΠΎΠ²Ρ‹Ρ… Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ΠΎΠ² ΠΈ повСдСния ΠΈΠ»ΠΈ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ повСдСния ΠΈΠ· Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΡΠΊΠΎΠ³ΠΎ класса Fish. НапримСр, класс FreshwaterFish ΠΌΠΎΠΆΠ΅Ρ‚ Π²ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎ Ρ‚ΠΈΠΏΠ΅ прСсноводной срСды, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΎΠ½ΠΈ ΠΆΠΈΠ»ΠΈ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Ρ€Π΅ΠΊΠ°, ΠΎΠ·Π΅Ρ€ΠΎ, ΠΏΡ€ΡƒΠ΄ ΠΈΠ»ΠΈ Π»ΡƒΠΆΠ°). Аналогично, класс SaltwaterFish ΠΌΠΎΠΆΠ΅Ρ‚ Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ ΠΌΠ΅Ρ‚ΠΎΠ΄ makeBabyFish() Ρ‚Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Ρ€Ρ‹Π±Π° Сст своСго ΠΏΠ°Ρ€Ρ‚Π½Π΅Ρ€Π° послС размноТСния (ΠΊΠ°ΠΊ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΎ Π² супСрклассС), ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ пСрСопрСдСлСния, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€:

ΠžΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΡ повСдСния ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° с интСрфСйсами

Π’ Java Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΎΡ€Π³Π°Π½ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² Π² Ρ‚Π°ΠΊ Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΡ‹Ρ… интСрфСйсах. Π₯отя класс опрСдСляСт ΠΎΠ±ΡŠΠ΅ΠΊΡ‚, интСрфСйс опрСдСляСт Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΎ ΠΊ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρƒ. НапримСр, ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ интСрфСйс Swimmer, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ прСдоставляСт Π½Π°Π±ΠΎΡ€ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΡΠ²Π»ΡΡŽΡ‚ΡΡ ΠΎΠ±Ρ‰ΠΈΠΌΠΈ для всСх ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΠ»Π°Π²Π°Ρ‚ΡŒ, Π±ΡƒΠ΄ΡŒ Ρ‚ΠΎ Ρ€Ρ‹Π±Π°, Π²Ρ‹Π΄Ρ€Ρ‹ ΠΈΠ»ΠΈ ΠΏΠΎΠ³Ρ€ΡƒΠΆΠ½Ρ‹Π΅ Π°Π½Π΄Ρ€ΠΎΠΈΠ΄Ρ‹. Π˜Π½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡ Swimmer ΠΌΠΎΠΆΠ΅Ρ‚ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Ρ‚ΡŒ Ρ‡Π΅Ρ‚Ρ‹Ρ€Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Π°: startSwimming(), stopSwimming(), dive() ΠΈ surface().

Π—Π°Ρ‚Π΅ΠΌ класс, ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹ΠΉ Fish, ΠΌΠΎΠΆΠ΅Ρ‚ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ интСрфСйс Swimmer (с использованиСм ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠ³ΠΎ слова Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΠ΅Ρ‚) ΠΈ ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΡ‚ΡŒ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΡŽ повСдСния плавания:

ΠžΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΡ классов ΠΈ интСрфСйсов с ΠΏΠ°ΠΊΠ΅Ρ‚Π°ΠΌΠΈ

Π—Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅

Π’Π°Ρƒ! Π’Ρ‹ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‡Ρ‚ΠΎ Π½Π°Ρ‡Π°Π»ΠΈ курс ΠΏΠΎ сбору Π΄Π°Π½Π½Ρ‹Ρ… Π² Java для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Android. ΠœΡ‹ рассмотрСли здСсь довольно ΠΌΠ½ΠΎΠ³ΠΎ ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»Π°, поэтому Π΄Π°Π²Π°ΠΉΡ‚Π΅ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ поразмыслим, ΠΏΡ€Π΅ΠΆΠ΄Π΅ Ρ‡Π΅ΠΌ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒ ΠΊ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌΡƒ ΡƒΡ€ΠΎΠΊΡƒ этой сСрии ΡƒΡ€ΠΎΠΊΠΎΠ². Π’ ΡƒΡ€ΠΎΠΊΠ΅ 2 ΠΌΡ‹ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡ΠΈΠΌ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½Ρ‹Π΅ Π΄Π΅Ρ‚Π°Π»ΠΈ синтаксиса Java.

Π’Ρ‹ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΠΎΡ†Π°Ρ€Π°ΠΏΠ°Π»ΠΈ ΠΏΠΎΠ²Π΅Ρ€Ρ…Π½ΠΎΡΡ‚ΡŒ Java-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Android. ΠžΠ·Π½Π°ΠΊΠΎΠΌΡŒΡ‚Π΅ΡΡŒ со всСми Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ Π·Π°ΠΌΠ΅Ρ‡Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌΠΈ ΡƒΡ‡Π΅Π±Π½ΠΈΠΊΠ°ΠΌΠΈ Π½Π° Mobiletuts +, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒΡΡ Π³Π»ΡƒΠ±ΠΆΠ΅ Π² Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ Java ΠΈ Android. Π£Π΄Π°Ρ‡ΠΈ!

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ

Π’Π°Ρˆ адрСс email Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½. ΠžΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ поля ΠΏΠΎΠΌΠ΅Ρ‡Π΅Π½Ρ‹ *