Типы
Идентификаторы языка Java должны начинаться с буквы любого регистра или символов "_" и "$". Далее могут следовать и цифры. Например, _Java - правильный идентификатор, а 1_$ - нет. Еще одно ограничение Java проистекает из его свойства использовать для хранения символы кодировки Unicode, т. е. можно применять только символы, которые имеют порядковый номер более 0xC0 в раскладке символов Unicode.
В стандарте языка Java имеются три типа комментариев:
/*Comment*/;
//Comment;
/** Comment*/.
Первые два представляют собой обычные комментарии, применяемые как в Java, так и в C++. Последний - особенность Java и введен в этот язык для автоматического документирования. После написания исходного текста утилита автоматической генерации документации собирает тексты таких комментариев в один файл.
Цифровые литералы схожи с аналогичными в языке C++. Правила для целых чисел предельно просты. Если у цифры нет суффикса и префикса, то это десятичное число. У восьмеричных чисел перед цифрой стоит ноль, а для шестнадцатеричных префикс состоит из ноля и буквы X (0x или 0X). При добавлении к цифре буквы L числу присваивается тип long. Примеры: 23 (десятичное), 0675 (восьмеричное), 0x9FA (шестнадцатеричное), 456L (длинное целое).
Теперь обратимся к числам с плавающей точкой. Для них предусмотрены два вида описаний: обычное и экспоненциальное. Обычные числа с плавающей точкой записываются в такой же форме, как и те числа, которые мы пишем на бумаге от руки: 3.14, 2.73 и т.д. Это же относится и к экспоненциальному формату: 2.67E4, 5.0E-10. При добавлении суффиксов D и F получаются числа типов double и float соответственно. Например, 2.71D и 0.981F.
Коснемся подробнее числовых типов. В языке Java появился новый 8-битный тип - byte. Тип int, в отличие от аналогичного в C++, имеет длину 32 бит. А для 16-битных чисел предусмотрен тип short. В соответствии со всеми этими изменениями тип long увеличился, став 64-битным.
В стандарт Java был введен тип boolean, которого так долго ждали программисты, использующие C++. Он может принимать лишь два значения: true и false.
По сравнению с C++ массивы Java претерпели значительные изменения. Во-первых, изменились правила их описания. Массив теперь может быть описан двумя следующими способами:
type name[];
type[] name;
При этом массив не создается, лишь описывается. Следовательно, для резервирования места под его элементы надо воспользоваться динамическим выделением с помощью ключевого слова new, например:
char[] arrayName;
arrayName[] = new char[100];
или совместить описание массива с выделением под него памяти:
char array[] = new char[100];
Многомерных массивов в Java нет, поэтому приходится прибегать к ухищрениям. Например, создать многомерный массив можно как массив массивов:
float matrix[][] = new float[5][5];
В Java возможно приведение разнообразных типов к типу "массив":
varName = (array_type[]) other_varName;