- •§1. Лексика языка
- •§2. Типы данных
- •§3. Ссылочный тип
- •3.1. Понятие ссылочного типа данных
- •§4. Класс String
- •§6. Массивы
- •§7. Коллекции, списки, итераторы
- •Пробелы
- •Комментарии
- •Лексемы
- •§8. Поток управления
- •.1. Кодировка
- •Понятие ссылочного типа данных
- •3.2. Преобразование ссылочных типов (расширение и сужение)
- •§4. Класс String
- •§6. Массивы
- •8.1. Условные операторы
- •8.2. Неопределенные циклы
- •8.3. Определенные циклы
- •Многовариантное ветвление – оператор switch
- •Прерывание потока управления
- •Ветвления
§8. Поток управления
В языке Java, как и в любом другом языке программирования, есть условные операторы и циклы для управления потоком. Блок, или составной оператор, произвольное количество простых операторов языка Java, заключенных в фигурные скобки. Блоки определяют область видимости своих переменных. Блоки могут быть вложенными один в другой. Однако невозможно объявить одинаково названные переменные в двух вложенных блоках
.1. Кодировка
Технология Java, изначально спроектированная для Глобальной сети Интернет, должна быть многоязыковой, а значит обычный набор символов ASCII (American Standard Code for Information Interchange), включающий в себя лишь латинский алфавит, цифры и простейшие специальные знаки (скобки, знаки препинания, арифметические операции и др.) не достаточен. Поэтому для записи текста программы применяется более универсальная кодировка Unicode. Как известно, Unicode представляет символы кодом из 2 байт, описывая, таким образом, 65535 символов.
Пробелы
Компилятор, анализируя программу, разделяет ее на пробелы, комментарии, лексемы. Пробелами в данном случае называют все символы, разбивающие текст программы на лексемы. Это как сам символ пробела (space, \u0020, десятичный код 32), так и знаки табуляции и перевода строки. Они используются для разделения лексем, а также для оформления кода, чтобы его было легче читать.
Комментарии
Комментарии в языке Java игнорируются при выполнении программы, поэтому в программу можно добавлять столько комментариев, сколько потребуется, не опасаясь увеличить ее объем. В языке Java есть три способа выделения комментариев в тексте
Лексемы
С точки зрения компилятора, а точнее его части, отвечающей за лексический разбор, основная роль пробелов и комментариев – служить разделителями между лексемами, причем сами разделители далее отбрасываются и не влияют на компилированный код. Лексемы бывают следующих видов:
Идентификаторы – это имена, которые даются различным элементам языка для упрощения доступа к ним. Имена имеют пакеты, классы, интерфейсы, поля, методы, аргументы и локальные переменные. Идентификаторы можно записывать символами Unicode, то есть, на любом удобном языке. Длина имени не ограничена. Идентификатор состоит из букв и цифр. Имя не может начинаться с цифры. Java-буквы, используемые в идентификаторах, включают в себя ASCII-символы A-Z (\u0041-\u005a), a-z (\u0061-\u007a), а также знаки подчеркивания _ (ASCII underscore, \u005f) и доллара $ (\u0024). Для идентификаторов не допускаются совпадения с зарезервированными словами (это ключевые слова, булевские литералы true и false, null-литерал null).
Ключевые слова – специальные лексемы, зарегистрированные в системе для внутреннего использования (представлены на рисунке ниже).
Литералы позволяют задать в программе значения для числовых, символьных и строковых выражений, а также null-литералов. В Java определены следующие виды литералов:
- целочисленный (integer);
- дробный (floating-point);
- булевский (boolean);
- символьный (character);
- строковый (string);
- null-литерал (null-literal).
Все типы данных разделяются на две группы. Первую составляют 8 простых или примитивных (от английского primitive) типов данных. Они подразделяются на три подгруппы:
Вторую группу составляют объектные или ссылочные (от английского reference) типы данных. Это все классы, интерфейсы и массивы.
