Введение

Унылая окружающая действительность никому не интересна, поэтому поговорим о чарующем мире магии и правилах сотворения заклинаний, реализующих наши самые смелые фантазии. Мир магии нематериален и позволяет создавать любые сущности. Достаточно «силы мысли» и можно создать все, что сможешь. Фантастичность создаваемого ограничивается только способностями к логическому и абстрактному мышлению. Ну и немного надо знать темное искусство некромантии математики. Хотя тайны этой области иллюзорного можно и не знать, а подсмотреть у некромантов математиков. Число магических языков «зело велико и разнообразно есть». А мы будем разбирать правила одного из них – Java. С лигурийского языка это переводится как Приключения Юпитера и Валькирии (Jupiter And Valkyrie Adventures).

Объявление

В мире магии во-первых, первично сознание, а не материя. А во-вторых, может существовать любая мыслимая сущность. Поэтому сотворение сущности начинается с утверждения, что она существует. Это называется – объявлением. А так как делать маг с сотворенной сущностью может что угодно и когда угодно, в том числе менять ее значение, то называются объявляемые сущности переменными. Так как даже начинающий маг много чего себе может напридумывать, сущности различаются и систематизируются с помощью типов. Есть типы созданные Создателем, их изменить нельзя и они называются примитивными. Все остальные типы создает сам маг и они называются объектными.

Имя переменной

У каждой переменной должно быть истинное имя. Собственно, только именами и различаются сущности создаваемые магом. Имена должных составляться из магических символов, считающихся буквами и цифрами в эзотерико-астрологической системе Юникод. Например, символ подчеркивания _ считается буквой, поэтому его можно использовать в именах переменных. Начинаться имя может только с магического символа, считающегося буквой. Первая буква должна быть строчной. В Межмировой ассоциации магов и адептов некромантии (МАМАН) приняты некоторые неформальные правила хорошего тона составления имен переменных. А именно, имя должно быть осмысленным и может состоять из нескольких слов. В случае слияния нескольких слов первая буква каждого слова (кроме первого) должна быть прописной. Например, myLittlePony. Такой стиль называется «верблюжий горб». И это потому, что он был изобретен после принесения в жертву верблюда.

Тип переменной

В магии Java все переменные – строго типизированы. Это значит, что каждая переменная имеет тип и он должен быть указан явным образом при ее объявлении. Повторюсь, что типы бывают примитивные и объектные. Примитивных – восемь. Потому что восемь – дьявольское число. Оно представляет собой 2 в 4 степени и делится без остатка на любое число от 1 до 8 включительно, кроме простых чисел. Примитивные типы: boolean, char, byte, short, int, long, float, double. Объектные типы придумывает сам маг и пишутся они с прописной буквы. Например – MySweetPony. Много тысяч объектных типов (классов) уже написано магами, стоявшими у истоков Java и входящих в МАМАН. Этот сборник называется Java API и использовать классы (типы) из него в своем колдовстве можно невозбранно.

Объявление

Итак, объявление происходит путем указания типа переменной и ее имени. Примеры:

boolean isPony;
String ponyName;
int ponyTaleSize;
Pony sweetieBelle;
Точка с запятой в конце каждой строки является необходимой. Ею заканчивается каждое выражение на языке Java. В каждом из указанных примеров мы объявляем переменную существующей и указываем к какому типу она относится. Но на данном этапе колдовства переменные еще не имеют содержания (значения). Они существую только в качестве чистой, а не воплощенной идеи. О наполнении переменных содержанием (присваивании им значения) будет рассказано в разделе об инициализации.

Трюки объявления

Есть несколько неявных магических трюков, которые надо знать. Ну или хотя бы помнить о них. В одном выражении можно объявить несколько переменных одного типа. Пример:

boolean isPony, isPonyReady;
String ponyName, ponyColor, ponyMood;
int ponyTaleSize, ponyLegSize; ponyManeSize
Pony sweetieBelle, rainbowDash, twilightSparkle;
Переменные можно объявлять в любом месте класса, но до того, как они будут использоваться в выражениях, так как выражения класса выполняются последовательно сверху вниз. Так же следует помнить о таком важнейшем колдунстве как область видимости переменных. Область видимости определяет из какой части класса можно обратиться к объявленной переменной. Это отдельная тема, но если кратко, то правила два. Переменные объявленные в классе и не внутри методов, циклов, блоков кода видны во всем классе. Переменные объявленные внутри методов, циклов, блоков кода видны только в пределах соответствующего метода, цикла, блока кода. С уважением, Зеленая лягушка. P.S. (продолжение следует)