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

Π§ΠΈΡ‚Π°Ρ‚ΡŒ ΠΎΠ½Π»Π°ΠΉΠ½ Β«ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π½Π° JavaΒ». Π‘Ρ‚Ρ€Π°Π½ΠΈΡ†Π° 18

Автор Н.А. Вязовик

НаконСц, javadoc ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Π΅ Ρ‚Π΅Π³ΠΈ. Они Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‚ΡΡ с символа @. ΠŸΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎΠ΅ описаниС этих Ρ‚Π΅Π³ΠΎΠ² ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡ‚ΠΈ Π² Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ. НапримСр, ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ‚Π΅Π³ @see, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡΠΎΡΠ»Π°Ρ‚ΡŒΡΡ Π½Π° Π΄Ρ€ΡƒΠ³ΠΎΠΉ класс, ΠΏΠΎΠ»Π΅ ΠΈΠ»ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄, ΠΈΠ»ΠΈ Π΄Π°ΠΆΠ΅ Π½Π° Π΄Ρ€ΡƒΠ³ΠΎΠΉ Internet-сайт.

/**

* ΠšΡ€Π°Ρ‚ΠΊΠΎΠ΅ описаниС.

*

* Π Π°Π·Π²Π΅Ρ€Π½ΡƒΡ‚Ρ‹ΠΉ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ.

*

* @see java.lang.String

* @see java.lang.Math#PI

* @see <a href="java.sun.com">Official

* Java site</a>

*/


ΠŸΠ΅Ρ€Π²Π°Ρ ссылка ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ Π½Π° класс String ( java.lang – Π½Π°Π·Π²Π°Π½ΠΈΠ΅ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ находится этот класс), вторая – Π½Π° ΠΏΠΎΠ»Π΅ PI класса Math (символ # раздСляСт Π½Π°Π·Π²Π°Π½ΠΈΠ΅ класса ΠΈ Π΅Π³ΠΎ ΠΏΠΎΠ»Π΅ΠΉ ΠΈΠ»ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ²), Ρ‚Ρ€Π΅Ρ‚ΡŒΡ ссылаСтся Π½Π° ΠΎΡ„ΠΈΡ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΉ сайт Java.

ΠšΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ° ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ записаны ΠΏΠ΅Ρ€Π΅Π΄ объявлСниСм классов, интСрфСйсов, ΠΏΠΎΠ»Π΅ΠΉ, ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² ΠΈ конструкторов. Если Π·Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ /* … */ Π² Π΄Ρ€ΡƒΠ³ΠΎΠΉ части ΠΊΠΎΠ΄Π°, Ρ‚ΠΎ ошибки Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚, Π½ΠΎ ΠΎΠ½ Π½Π΅ ΠΏΠΎΠΏΠ°Π΄Π΅Ρ‚ Π² Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΡŽ, Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΡƒΠ΅ΠΌΡƒΡŽ javadoc. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΠ°ΠΊΠ΅Ρ‚ (Ρ‚Π°ΠΊ Π½Π°Π·Ρ‹Π²Π°ΡŽΡ‚ΡΡ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ, ΠΈΠ»ΠΈ ΠΌΠΎΠ΄ΡƒΠ»ΠΈ, Π² Java). Для этого Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΉ Ρ„Π°ΠΉΠ» package.html, ΡΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ Π² Π½Π΅ΠΌ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ ΠΈ ΠΏΠΎΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒ Π΅Π³ΠΎ Π² ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ ΠΏΠ°ΠΊΠ΅Ρ‚Π°. HTML-тСкст, содСрТащийся ΠΌΠ΅ΠΆΠ΄Ρƒ Ρ‚Π΅Π³Π°ΠΌΠΈ <body> ΠΈ </body>, Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠΎΠΌΠ΅Ρ‰Π΅Π½ Π² Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΡŽ, Π° ΠΏΠ΅Ρ€Π²ΠΎΠ΅ ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ для ΠΊΡ€Π°Ρ‚ΠΊΠΎΠΉ характСристики этого ΠΏΠ°ΠΊΠ΅Ρ‚Π°.

ЛСксСмы

Π˜Ρ‚Π°ΠΊ, ΠΌΡ‹ рассмотрСли ΠΏΡ€ΠΎΠ±Π΅Π»Ρ‹ (Π² ΡˆΠΈΡ€ΠΎΠΊΠΎΠΌ смыслС этого слова, Ρ‚.Π΅. всС символы, ΠΎΡ‚Π²Π΅Ρ‡Π°ΡŽΡ‰ΠΈΠ΅ Π·Π° Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ тСкста ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹) ΠΈ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ, примСняСмыС для Π²Π²ΠΎΠ΄Π° пояснСний ΠΊ ΠΊΠΎΠ΄Ρƒ. Π‘ Ρ‚ΠΎΡ‡ΠΊΠΈ зрСния программиста ΠΎΠ½ΠΈ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ Π±ΠΎΠ»Π΅Π΅ Ρ‡ΠΈΡ‚Π°Π΅ΠΌΠΎΠΉ ΠΈ понятной для дальнСйшСго развития.

Π‘ Ρ‚ΠΎΡ‡ΠΊΠΈ зрСния компилятора, Π° Ρ‚ΠΎΡ‡Π½Π΅Π΅ Π΅Π³ΠΎ части, ΠΎΡ‚Π²Π΅Ρ‡Π°ΡŽΡ‰Π΅ΠΉ Π·Π° лСксичСский Ρ€Π°Π·Π±ΠΎΡ€, основная Ρ€ΠΎΠ»ΡŒ ΠΏΡ€ΠΎΠ±Π΅Π»ΠΎΠ² ΠΈ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠ΅Π² – ΡΠ»ΡƒΠΆΠΈΡ‚ΡŒ раздСлитСлями ΠΌΠ΅ΠΆΠ΄Ρƒ лСксСмами, ΠΏΡ€ΠΈΡ‡Π΅ΠΌ сами Ρ€Π°Π·Π΄Π΅Π»ΠΈΡ‚Π΅Π»ΠΈ Π΄Π°Π»Π΅Π΅ ΠΎΡ‚Π±Ρ€Π°ΡΡ‹Π²Π°ΡŽΡ‚ΡΡ ΠΈ Π½Π° ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ ΠΊΠΎΠ΄ Π½Π΅ Π²Π»ΠΈΡΡŽΡ‚. НапримСр, всС ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ объявлСния ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ эквивалСнтны:


// Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ ΠΏΡ€ΠΎΠ±Π΅Π» Π² качСствС раздСлитСля.

int x = 3;


// здСсь Ρ€Π°Π·Π΄Π΅Π»ΠΈΡ‚Π΅Π»Π΅ΠΌ являСтся ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄ строки

int

x

=

3

;

// здСсь раздСляСм Π·Π½Π°ΠΊΠΎΠΌ табуляции

int x = 3;

/*

* ЕдинствСнный ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠΈΠ°Π»ΡŒΠ½ΠΎ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹ΠΉ

* Ρ€Π°Π·Π΄Π΅Π»ΠΈΡ‚Π΅Π»ΡŒ ΠΌΠ΅ΠΆΠ΄Ρƒ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ Ρ‚ΠΈΠΏΠ° Π΄Π°Π½Π½Ρ‹Ρ…

* int ΠΈ ΠΈΠΌΠ΅Π½Π΅ΠΌ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ x здСсь описан

* ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠ΅ΠΌ Π±Π»ΠΎΡ‡Π½ΠΎΠ³ΠΎ Ρ‚ΠΈΠΏΠ°.

*/

int/**/x=3;


ΠšΠΎΠ½Π΅Ρ‡Π½ΠΎ, лСксСмы ΠΎΡ‡Π΅Π½ΡŒ Ρ€Π°Π·Π½ΠΎΠΎΠ±Ρ€Π°Π·Π½Ρ‹, ΠΈ ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΎΠ½ΠΈ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‚ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ свойства языка. Рассмотрим всС ΠΈΡ… Π²ΠΈΠ΄Ρ‹ Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ.

Π’ΠΈΠ΄Ρ‹ лСксСм

НиТС пСрСчислСны всС Π²ΠΈΠ΄Ρ‹ лСксСм Π² Java:


* ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Ρ‹ (identifiers);

* ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ слова (key words);

* Π»ΠΈΡ‚Π΅Ρ€Π°Π»Ρ‹ (literals);

* Ρ€Π°Π·Π΄Π΅Π»ΠΈΡ‚Π΅Π»ΠΈ (separators);

* ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ (operators).


Рассмотрим ΠΈΡ… ΠΏΠΎ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ.

Π˜Π΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Ρ‹

Π˜Π΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Ρ‹ – это ΠΈΠΌΠ΅Π½Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π΄Π°ΡŽΡ‚ΡΡ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹ΠΌ элСмСнтам языка для упрощСния доступа ΠΊ Π½ΠΈΠΌ. ИмСна ΠΈΠΌΠ΅ΡŽΡ‚ ΠΏΠ°ΠΊΠ΅Ρ‚Ρ‹, классы, интСрфСйсы, поля, ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹, Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Ρ‹ ΠΈ Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹Π΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ (всС эти понятия ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ Ρ€Π°ΡΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°ΡŽΡ‚ΡΡ Π² ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… лСкциях). Π˜Π΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Ρ‹ ΠΌΠΎΠΆΠ½ΠΎ Π·Π°ΠΏΠΈΡΡ‹Π²Π°Ρ‚ΡŒ символами Unicode, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ Π½Π° любом ΡƒΠ΄ΠΎΠ±Π½ΠΎΠΌ языкС. Π”Π»ΠΈΠ½Π° ΠΈΠΌΠ΅Π½ΠΈ Π½Π΅ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½Π°.

Π˜Π΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ состоит ΠΈΠ· Π±ΡƒΠΊΠ² ΠΈ Ρ†ΠΈΡ„Ρ€. Имя Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π½Π°Ρ‡ΠΈΠ½Π°Ρ‚ΡŒΡΡ с Ρ†ΠΈΡ„Ρ€Ρ‹. Java-Π±ΡƒΠΊΠ²Ρ‹, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ Π² ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Π°Ρ…, Π²ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‚ Π² сСбя ASCII -символы A-Z ( \u0041 - \u005a ), a-z ( \u0061 - \u007a ), Π° Ρ‚Π°ΠΊΠΆΠ΅ Π·Π½Π°ΠΊΠΈ подчСркивания ( ASCII underscore, \u005f ) ΠΈ Π΄ΠΎΠ»Π»Π°Ρ€Π° $ ( \u0024 ). Π—Π½Π°ΠΊ Π΄ΠΎΠ»Π»Π°Ρ€Π° ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΡ€ΠΈ автоматичСской Π³Π΅Π½Π΅Ρ€Π°Ρ†ΠΈΠΈ ΠΊΠΎΠ΄Π° (Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΈΡΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ случайноС совпадСниС ΠΈΠΌΠ΅Π½), Π»ΠΈΠ±ΠΎ ΠΏΡ€ΠΈ использовании ΠΊΠ°ΠΊΠΈΡ…-Π»ΠΈΠ±ΠΎ старых Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ, Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π΄ΠΎΠΏΡƒΡΠΊΠ°Π»ΠΈΡΡŒ ΠΈΠΌΠ΅Π½Π° с этим символом. Java-Ρ†ΠΈΡ„Ρ€Ρ‹ Π²ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‚ Π² сСбя ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹Π΅ ASCII -Ρ†ΠΈΡ„Ρ€Ρ‹ 0-9 ( \u0030 - \u0039 ).

Для ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ΠΎΠ² Π½Π΅ Π΄ΠΎΠΏΡƒΡΠΊΠ°ΡŽΡ‚ΡΡ совпадСния с Π·Π°Ρ€Π΅Π·Π΅Ρ€Π²ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΌΠΈ словами (это ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ слова, булСвскиС Π»ΠΈΡ‚Π΅Ρ€Π°Π»Ρ‹ true ΠΈ false ΠΈ null- Π»ΠΈΡ‚Π΅Ρ€Π°Π» null ). ΠšΠΎΠ½Π΅Ρ‡Π½ΠΎ, Ссли 2 ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Π° Π²ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‚ Π² сСбя Ρ€Π°Π·Π½Ρ‹Π΅ Π±ΡƒΠΊΠ²Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΠΎ выглядят (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, латинская ΠΈ русская Π±ΡƒΠΊΠ²Ρ‹ A ), Ρ‚ΠΎ ΠΎΠ½ΠΈ ΡΡ‡ΠΈΡ‚Π°ΡŽΡ‚ΡΡ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹ΠΌΠΈ.

Π’ этой Π»Π΅ΠΊΡ†ΠΈΠΈ ΡƒΠΆΠ΅ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΠ»ΠΈΡΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Ρ‹:


Character, a, b, c, D, x1, x2, Math, sqrt, x,

y, i, s, PI, getRadius, circle, getAbs,

calculate, condition, getWidth, getHeight,

java, lang, String


Π’Π°ΠΊΠΆΠ΅ допустимыми ΡΠ²Π»ΡΡŽΡ‚ΡΡ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Ρ‹:


Computer, COLOR_RED, _, aVeryLongNameOfTheMethod

ΠšΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ слова

ΠšΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ слова – это Π·Π°Ρ€Π΅Π·Π΅Ρ€Π²ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Π΅ слова, состоящиС ΠΈΠ· ASCII -символов ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‰ΠΈΠ΅ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ Π·Π°Π΄Π°Ρ‡ΠΈ языка. Π’ΠΎΡ‚ ΠΈΡ… ΠΏΠΎΠ»Π½Ρ‹ΠΉ список (48 слов):


abstract double int strictfp

boolean else interface super

break extends long switch byte

final native synchronized case

finally new this catch float package

throw char for private throws class

goto protected transient const if

public try continue implements return

void default import short volatile do

instanceof static while


ΠšΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ слова goto ΠΈ const Π·Π°Ρ€Π΅Π·Π΅Ρ€Π²ΠΈΡ€ΠΎΠ²Π°Π½Ρ‹, Π½ΠΎ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ. Π­Ρ‚ΠΎ сдСлано для Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ компилятор ΠΌΠΎΠ³ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ ΠΎΡ‚Ρ€Π΅Π°Π³ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π½Π° ΠΈΡ… использованиС Π² Π΄Ρ€ΡƒΠ³ΠΈΡ… языках. Напротив, ΠΎΠ±Π° булСвских Π»ΠΈΡ‚Π΅Ρ€Π°Π»Π° true, false ΠΈ null- Π»ΠΈΡ‚Π΅Ρ€Π°Π» null часто ΡΡ‡ΠΈΡ‚Π°ΡŽΡ‚ ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹ΠΌΠΈ словами (Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, ΠΏΠΎΡ‚ΠΎΠΌΡƒ, Ρ‡Ρ‚ΠΎ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ срСдства Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΠΎΠ΄ΡΠ²Π΅Ρ‡ΠΈΠ²Π°ΡŽΡ‚ ΠΈΡ… Ρ‚Π°ΠΊΠΈΠΌ ΠΆΠ΅ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ), ΠΎΠ΄Π½Π°ΠΊΠΎ это ΠΈΠΌΠ΅Π½Π½ΠΎ Π»ΠΈΡ‚Π΅Ρ€Π°Π»Ρ‹.

Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ всСх ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Ρ… слов Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π°ΡΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°Ρ‚ΡŒΡΡ Π² ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… лСкциях.

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

Π›ΠΈΡ‚Π΅Ρ€Π°Π»Ρ‹ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ Π·Π°Π΄Π°Ρ‚ΡŒ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ значСния для числовых, ΡΠΈΠΌΠ²ΠΎΠ»ΡŒΠ½Ρ‹Ρ… ΠΈ строковых Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ, Π° Ρ‚Π°ΠΊΠΆΠ΅ null- Π»ΠΈΡ‚Π΅Ρ€Π°Π»ΠΎΠ². ВсСго Π² Java ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΎ 6 Π²ΠΈΠ΄ΠΎΠ² Π»ΠΈΡ‚Π΅Ρ€Π°Π»ΠΎΠ²:


* цСлочислСнный (integer);

* Π΄Ρ€ΠΎΠ±Π½Ρ‹ΠΉ (floating-point);

* булСвский (boolean);

* ΡΠΈΠΌΠ²ΠΎΠ»ΡŒΠ½Ρ‹ΠΉ (character);

* строковый (string);

* null- Π»ΠΈΡ‚Π΅Ρ€Π°Π» (null-literal).


Рассмотрим ΠΈΡ… ΠΏΠΎ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ.

ЦСлочислСнныС Π»ΠΈΡ‚Π΅Ρ€Π°Π»Ρ‹

ЦСлочислСнныС Π»ΠΈΡ‚Π΅Ρ€Π°Π»Ρ‹ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ Π·Π°Π΄Π°Π²Π°Ρ‚ΡŒ цСлочислСнныС значСния Π² дСсятСричном, Π²ΠΎΡΡŒΠΌΠ΅Ρ€ΠΈΡ‡Π½ΠΎΠΌ ΠΈ ΡˆΠ΅ΡΡ‚Π½Π°Π΄Ρ†Π°Ρ‚Π΅Ρ€ΠΈΡ‡Π½ΠΎΠΌ Π²ΠΈΠ΄Π΅. ДСсятСричный Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ Ρ‚Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π΅Π½ ΠΈ Π½ΠΈΡ‡Π΅ΠΌ Π½Π΅ отличаСтся ΠΎΡ‚ ΠΏΡ€Π°Π²ΠΈΠ», принятых Π² Π΄Ρ€ΡƒΠ³ΠΈΡ… языках. ЗначСния Π² Π²ΠΎΡΡŒΠΌΠ΅Ρ€ΠΈΡ‡Π½ΠΎΠΌ Π²ΠΈΠ΄Π΅ Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‚ΡΡ с нуля, ΠΈ, ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎ, использованиС Ρ†ΠΈΡ„Ρ€ 8 ΠΈ 9 Π·Π°ΠΏΡ€Π΅Ρ‰Π΅Π½ΠΎ. Π—Π°ΠΏΠΈΡΡŒ ΡˆΠ΅ΡΡ‚Π½Π°Π΄Ρ†Π°Ρ‚Π΅Ρ€ΠΈΡ‡Π½Ρ‹Ρ… чисСл начинаСтся с 0x ΠΈΠ»ΠΈ 0X (Ρ†ΠΈΡ„Ρ€Π° 0 ΠΈ латинская ASCII -Π±ΡƒΠΊΠ²Π° X Π² ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½ΠΎΠΌ рСгистрС). Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, ноль ΠΌΠΎΠΆΠ½ΠΎ Π·Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ трСмя Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹ΠΌΠΈ способами:


0

00

0x0


Как ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ, для записи Ρ†ΠΈΡ„Ρ€ 10 - 15 Π² ΡˆΠ΅ΡΡ‚Π½Π°Π΄Ρ†Π°Ρ‚Π΅Ρ€ΠΈΡ‡Π½ΠΎΠΌ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ Π±ΡƒΠΊΠ²Ρ‹ A, B, C, D, E, F, прописныС ΠΈΠ»ΠΈ строчныС. ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ Ρ‚Π°ΠΊΠΈΡ… Π»ΠΈΡ‚Π΅Ρ€Π°Π»ΠΎΠ²:


0xaBcDeF, 0xCafe, 0xDEC


Π’ΠΈΠΏΡ‹ Π΄Π°Π½Π½Ρ‹Ρ… Ρ€Π°ΡΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°ΡŽΡ‚ΡΡ Π½ΠΈΠΆΠ΅, ΠΎΠ΄Π½Π°ΠΊΠΎ здСсь Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡƒΠΏΠΎΠΌΡΠ½ΡƒΡ‚ΡŒ Π΄Π²Π° цСлочислСнных Ρ‚ΠΈΠΏΠ° int ΠΈ long Π΄Π»ΠΈΠ½ΠΎΠΉ 4 ΠΈ 8 Π±Π°ΠΉΡ‚, соотвСтствСнно (ΠΈΠ»ΠΈ 32 ΠΈ 64 Π±ΠΈΡ‚Π°, соотвСтствСнно). Оба эти Ρ‚ΠΈΠΏΠ° Π·Π½Π°ΠΊΠΎΠ²Ρ‹Π΅, Ρ‚.Π΅. Ρ‚ΠΈΠΏ int Ρ…Ρ€Π°Π½ΠΈΡ‚ значСния ΠΎΡ‚ -231 Π΄ΠΎ 231-1, ΠΈΠ»ΠΈ ΠΎΡ‚ -2.147.483.648 Π΄ΠΎ 2.147.483.647. По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ цСлочислСнный Π»ΠΈΡ‚Π΅Ρ€Π°Π» ΠΈΠΌΠ΅Π΅Ρ‚ Ρ‚ΠΈΠΏ int, Π° Π·Π½Π°Ρ‡ΠΈΡ‚, Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ допустимо ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π»ΠΈΡ‚Π΅Ρ€Π°Π»Ρ‹ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΡ‚ 0 Π΄ΠΎ 2147483648, ΠΈΠ½Π°Ρ‡Π΅ Π²ΠΎΠ·Π½ΠΈΠΊΠ½Π΅Ρ‚ ошибка компиляции. ΠŸΡ€ΠΈ этом Π»ΠΈΡ‚Π΅Ρ€Π°Π» 2147483648 ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΊΠ°ΠΊ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ ΡƒΠ½Π°Ρ€Π½ΠΎΠ³ΠΎ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° - :


int x = -2147483648; \\ Π²Π΅Ρ€Π½ΠΎ

int y = 5-2147483648;

\\ здСсь Π²ΠΎΠ·Π½ΠΈΠΊΠ½Π΅Ρ‚

\\ ошибка компиляции


БоотвСтствСнно, допустимыС Π»ΠΈΡ‚Π΅Ρ€Π°Π»Ρ‹ Π² Π²ΠΎΡΡŒΠΌΠ΅Ρ€ΠΈΡ‡Π½ΠΎΠΉ записи Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ ΠΎΡ‚ 00 Π΄ΠΎ 017777777777 ( =231-1 ), с ΡƒΠ½Π°Ρ€Π½Ρ‹ΠΌ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠΌ - допустимо Ρ‚Π°ΠΊΠΆΠ΅ -020000000000 ( = -231 ). Аналогично для ΡˆΠ΅ΡΡ‚Π½Π°Π΄Ρ†Π°Ρ‚Π΅Ρ€ΠΈΡ‡Π½ΠΎΠ³ΠΎ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π° – ΠΎΡ‚ 0x0 Π΄ΠΎ 0x7fffffff ( =231-1 ), Π° Ρ‚Π°ΠΊΠΆΠ΅ -0x80000000 ( = -231 ).

Π’ΠΈΠΏ long ΠΈΠΌΠ΅Π΅Ρ‚ Π΄Π»ΠΈΠ½Ρƒ 64 Π±ΠΈΡ‚Π°, Π° Π·Π½Π°Ρ‡ΠΈΡ‚, позволяСт Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒ значСния ΠΎΡ‚ -263 Π΄ΠΎ 263-1. Π§Ρ‚ΠΎΠ±Ρ‹ ввСсти Ρ‚Π°ΠΊΠΎΠΉ Π»ΠΈΡ‚Π΅Ρ€Π°Π», Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π² ΠΊΠΎΠ½Ρ†Π΅ ΠΏΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Π»Π°Ρ‚ΠΈΠ½ΡΠΊΡƒΡŽ Π±ΡƒΠΊΠ²Ρƒ L ΠΈΠ»ΠΈ l, Ρ‚ΠΎΠ³Π΄Π° всС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π±ΡƒΠ΄Π΅Ρ‚ Ρ‚Ρ€Π°ΠΊΡ‚ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΊΠ°ΠΊ long. Аналогично ΠΌΠΎΠΆΠ½ΠΎ Π²Ρ‹ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹Π΅ допустимыС значСния для Π½ΠΈΡ…:


9223372036854775807L

0777777777777777777777L

0x7fffffffffffffffL

// наибольшиС ΠΎΡ‚Ρ€ΠΈΡ†Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ значСния:


-9223372036854775808L

-01000000000000000000000L

-0x8000000000000000L


Π”Ρ€ΡƒΠ³ΠΈΠ΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ цСлочислСнных Π»ΠΈΡ‚Π΅Ρ€Π°Π»ΠΎΠ² Ρ‚ΠΈΠΏΠ° long:


0L, 123l, 0xC0B0L


Π”Ρ€ΠΎΠ±Π½Ρ‹Π΅ Π»ΠΈΡ‚Π΅Ρ€Π°Π»Ρ‹

Π”Ρ€ΠΎΠ±Π½Ρ‹Π΅ Π»ΠΈΡ‚Π΅Ρ€Π°Π»Ρ‹ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‚ собой числа с ΠΏΠ»Π°Π²Π°ΡŽΡ‰Π΅ΠΉ дСсятичной Ρ‚ΠΎΡ‡ΠΊΠΎΠΉ. ΠŸΡ€Π°Π²ΠΈΠ»Π° записи Ρ‚Π°ΠΊΠΈΡ… чисСл Ρ‚Π°ΠΊΠΈΠ΅ ΠΆΠ΅, ΠΊΠ°ΠΊ ΠΈ Π² Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π΅ соврСмСнных языков программирования.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹:


3.14

2.

.5

7e10

3.1E-20


Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, Π΄Ρ€ΠΎΠ±Π½Ρ‹ΠΉ Π»ΠΈΡ‚Π΅Ρ€Π°Π» состоит ΠΈΠ· ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… составных частСй:


* цСлая Ρ‡Π°ΡΡ‚ΡŒ;

* дСсятичная Ρ‚ΠΎΡ‡ΠΊΠ° (ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ASCII -символ Ρ‚ΠΎΡ‡ΠΊΠ°);

* дробная Ρ‡Π°ΡΡ‚ΡŒ;

* порядок (состоит ΠΈΠ· латинской ASCII -Π±ΡƒΠΊΠ²Ρ‹ E Π² ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½ΠΎΠΌ рСгистрС ΠΈ Ρ†Π΅Π»ΠΎΠ³ΠΎ числа с ΠΎΠΏΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹ΠΌ Π·Π½Π°ΠΊΠΎΠΌ + ΠΈΠ»ΠΈ - );

* ΠΎΠΊΠΎΠ½Ρ‡Π°Π½ΠΈΠ΅-ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ Ρ‚ΠΈΠΏΠ°.


ЦСлая ΠΈ дробная части Π·Π°ΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‚ΡΡ дСсятичными Ρ†ΠΈΡ„Ρ€Π°ΠΌΠΈ, Π° ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ Ρ‚ΠΈΠΏΠ° (Π°Π½Π°Π»ΠΎΠ³ указатСля L ΠΈΠ»ΠΈ l для цСлочислСнных Π»ΠΈΡ‚Π΅Ρ€Π°Π»ΠΎΠ² Ρ‚ΠΈΠΏΠ° long ) ΠΈΠΌΠ΅Π΅Ρ‚ Π΄Π²Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Ρ… значСния – латинская ASCII -Π±ΡƒΠΊΠ²Π° D (для Ρ‚ΠΈΠΏΠ° double ) ΠΈΠ»ΠΈ F (для Ρ‚ΠΈΠΏΠ° float ) Π² ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½ΠΎΠΌ рСгистрС. Они Π±ΡƒΠ΄ΡƒΡ‚ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ рассмотрСны Π½ΠΈΠΆΠ΅.

НСобходимыми частями ΡΠ²Π»ΡΡŽΡ‚ΡΡ:


* хотя Π±Ρ‹ ΠΎΠ΄Π½Π° Ρ†ΠΈΡ„Ρ€Π° Π² Ρ†Π΅Π»ΠΎΠΉ ΠΈΠ»ΠΈ Π΄Ρ€ΠΎΠ±Π½ΠΎΠΉ части;

* дСсятичная Ρ‚ΠΎΡ‡ΠΊΠ° ΠΈΠ»ΠΈ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ стСпСни, ΠΈΠ»ΠΈ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ Ρ‚ΠΈΠΏΠ°.


ВсС ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Π΅ части Π½Π΅ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, "ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹Π΅" Π΄Ρ€ΠΎΠ±Π½Ρ‹Π΅ Π»ΠΈΡ‚Π΅Ρ€Π°Π»Ρ‹ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ записаны, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Ρ‚Π°ΠΊ:


1.

.1

1e1

1f


Π’ Java Π΅ΡΡ‚ΡŒ Π΄Π²Π° Π΄Ρ€ΠΎΠ±Π½Ρ‹Ρ… Ρ‚ΠΈΠΏΠ°, упомянутыС Π²Ρ‹ΡˆΠ΅, – float ΠΈ double. Π˜Ρ… Π΄Π»ΠΈΠ½Π° – 4 ΠΈ 8 Π±Π°ΠΉΡ‚ ΠΈΠ»ΠΈ 32 ΠΈ 64 Π±ΠΈΡ‚Π°, соотвСтствСнно. Π”Ρ€ΠΎΠ±Π½Ρ‹ΠΉ Π»ΠΈΡ‚Π΅Ρ€Π°Π» ΠΈΠΌΠ΅Π΅Ρ‚ Ρ‚ΠΈΠΏ float, Ссли ΠΎΠ½ заканчиваСтся Π½Π° Π»Π°Ρ‚ΠΈΠ½ΡΠΊΡƒΡŽ Π±ΡƒΠΊΠ²Ρƒ F Π² ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½ΠΎΠΌ рСгистрС. Π’ ΠΏΡ€ΠΎΡ‚ΠΈΠ²Π½ΠΎΠΌ случаС ΠΎΠ½ рассматриваСтся ΠΊΠ°ΠΊ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Ρ‚ΠΈΠΏΠ° double ΠΈ ΠΌΠΎΠΆΠ΅Ρ‚ Π²ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ Π² сСбя ΠΎΠΊΠΎΠ½Ρ‡Π°Π½ΠΈΠ΅ D ΠΈΠ»ΠΈ d, ΠΊΠ°ΠΊ ΠΏΡ€ΠΈΠ·Π½Π°ΠΊ Ρ‚ΠΈΠΏΠ° double (ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для наглядности).