Шрифт:
На заметку Если при попытке скомпилировать программу компилятор javac не будет найден, вам придется указать полный путь к инструментальным средствам JDK, доступным из командной строки, при условии, что комплект JDK установлен правильно. В Windows это, например, означает, что вам нужно ввести путь к доступным из командной строки инструментальным средствам JDK в переменной окружения PATH. Так, если комплект JDK 7 установлен в выбираемых по умолчанию каталогах, путь к его инструментальным средствам будет следующим: C:\Program Files\Java\j dkl. 7 . 0\bin. (Разумеется, в этом пути может быть указана другая версия JDK.) Чтобы узнать, как задавать путь к файлам, обращайтесь к справочной системе конкретной операционной системы, поскольку в разных операционных системах эта процедура может отличаться. Но если вам не терпится скомпилировать и выполнить свою первую программу на Java, то укажите полный путь к соответствующим инструментальным средствам прямо в командной строке, как показано в приведенном ниже примере. C:\"Program Files"\Java\jdkl.7.0\bin\javac Example.java
или C:\"Program Files11 \Java\ jdkl. 7 . 0\bin\ java Example
Впрочем, такой способ не совсем практичен. Намного удобнее задать путь к нужным файлам раз и навсегда. Построчный анализ исходного кода первого примера программы
Несмотря на то что программа Example. j ava очень проста и объем ее кода невелик, она обладает рядом свойств, общих для всех программ на Java. Проанализируем эту программу по частям.
Ее исходный код начинается следующими строками: /* Это пример простой программы на Java. Присвоить ее исходному файлу имя Example.java. */
Это комментарии. Как и в большинстве других языков программирования, в Java разрешается комментировать исходный текст программы. Комментарии игнорируются компилятором. Текст комментариев описывает действия, выполняемые программой, а в итоге исходный код становится более простым для восприятия. В данном случае комментарии сообщают, что программа проста, а ее исходному файлу следует присвоить имя Example. java. Очевидно, что в реальных приложениях комментарии описывают, какие именно функции выполняют отдельные фрагменты программы или зачем используются те или иные языковые конструкции.
В Java поддерживаются три вида комментариев. Первый из них приведен в начале рассматриваемой здесь программы и позволяет задавать многострочные комментарии.
Они начинаются символами / и оканчиваются символами /. Любое содержимое, находящееся между этими ограничителями, игнорируется компилятором.
Далее следует приведенная ниже строка кода, class Example {
В ней присутствует ключевое слово class, с помощью которого определяется новый класс. Как упоминалось ранее, класс является основной языковой конструкцией Java, поддерживающей инкапсуляцию. A Example — это имя класса. Определение класса начинается открывающей фигурной скобкой ({) и заканчивается закрывающей фигурной скобкой (}). Элементы, находящиеся между ними, являются членами класса.
Не пытайтесь пока что разобраться в особенностях классов, но имейте лишь в виду, что любой код, какие бы действия он ни выполнял, находится внутри класса. Такая организация свидетельствует о том, что любая программа на Java является в той или иной мере объектно-ориентированной.
Следующая строка кода содержит однострочные комментарии, как показано ниже. // Выполнение каждой программы на Java начинается //с вызова метода main.
Это второй вид комментариев, поддерживаемых в Java. Однострочные комментарии начинаются с символов // и продолжаются до конца строки. Как правило, многострочные комментарии служат для длинных примечаний, а однострочные — для коротких заметок.
Следующая анализируемая строка кода выглядит так, как показано ниже. public static void main (String args[]) {
В этой строке определяется метод main . Как упоминалось ранее, в терминологии Java подпрограммы принято называть методами. Именно с данной строки начинается работа программы, и приведенные выше комментарии подтверждают это. Выполнение любой прикладной программы на Java начинается с вызова метода main . Мы не будем пока что касаться назначения каждого элемента анализируемой строки кода. Ведь для этого нужно сначала рассмотреть ряд других языковых средств Java. Но поскольку многие примеры программ, представленные в этой книге, содержат строку с подобным определением метода main , рассмотрим вкратце ее составные части.
Ключевое слово public называется модификатором доступа. Модификатор доступа определяет правила обращения к членам класса из других частей программы. Если член класса предваряется ключевым словом public, то к нему можно обращаться за пределами класса. (В отличие от public, модификатор доступа private запрещает доступ к членам класса за его пределами.) В данном случае метод main должен быть объявлен как public, поскольку при выполнении программы он вызывается за пределами своего класса. Ключевое слово static допускает вызов метода main до создания объекта класса. Указывать его необходимо, поскольку метод main вызывается виртуальной машиной еще до того, как будут созданы какие-либо объекты. Ключевое слово void лишь сообщает компилятору о том, что метод main не возвращает значение. Как будет показано далее, для некоторых методов предусматривается возвращаемое значение. Если вам пока еще не все понятно в анализируемой строке кода, не отчаивайтесь. Упомянутые здесь языковые средства Java будут подробно рассмотрены в последующих главах книги.
Как упоминалось выше, метод main вызывается в начале выполнения программы на Java. Любые данные, которые требуется передать этому методу, задаются с помощью переменных, указываемых в круглых скобках после имени метода. Эти переменные называются параметрами. Если для какого-нибудь метода параметры не предусмотрены, то после его имени указывается лишь пара круглых скобок. В данном случае для метода main под именем args задается единственный параметр String args [ ]. Это массив объектов типа String. (Массивы представляют собой наборы однотипных объектов.) В объектах типа String хранятся последовательности символов. В данном случае в массиве args методу main передаются в виде аргументов параметры, указываемые в командной строке при запуске программы. В анализируемой здесь программе данные, получаемые из командной строки, не используются, но в других примерах программ будет показано, каким образом эти данные обрабатываются.