Java: руководство для начинающих
Шрифт:
Исходные коды примеров программ, представленных в этой книге, доступны на веб-сайте издательства McGraw-Hill по адресу www.oraclepressbooks.com. Перейдите по указанному адресу на главную страницу этого веб-сайта, а затем по ссылке Dowloads-Code-Java A Beginner's Guide, Fifth Edition и далее следуйте инструкциям по загрузке архивного файла с исходными кодами программ. Но исходный код можно ввести и вручную, воспользовавшись простым текстовым редактором, а не текстовым процессором вроде Word, поскольку вместе с исходным текстом программы он записывает в файл сведения о форматировании текста, которые будут восприняты компилятором как недопустимые языковые конструкции. Если вы работаете на платформе Windows, вам вполне подойдет WordPad
В большинстве языков программирования допускается присваивать произвольное имя файлу, содержащему исходный код программы. Но в Java действуют иные правила. Для программирования на Java следует знать, что имя исходного файла имеет очень большое значение. В рассматриваемом здесь примере файлу, содержащему исходный код программы, нужно присвоить имя Example .java. Ниже поясняются причины, по которым выбирается именно такое имя файла.
В Java исходный файл формально называется единицей компиляции. Это текстовый файл, содержащий определения одного или нескольких классов. (Исходные файлы первых примеров программ будут содержат только один класс.) Компилятор Java требует, чтобы исходный файл имел расширение . j ava. Анализируя исходный код первого примера программы, вы заметите, что класс имеет имя Example. И это не случайно. В программах на Java весь код должен находиться внутри класса. Условно принято, что имя класса должно совпадать с именем файла, содержащего исходный текст программы. Нетрудно убедиться, что имя файла в точности соответствует имени класса вплоть до регистра. Дело в том, что в Java имена и другие идентификаторы зависят от регистра символов. На первый взгляд, условие соответствия имен классов и файлов может показаться слишком строгим, но оно упрощает организацию и сопровождение программ, как станет ясно из последующих примеров. Компиляция программы
Для компиляции программы Example запустите компилятор javac, указав в командной строке имя исходного файла, как показано ниже. C:\>javac Example.java
Компилятор javac создаст файл Example .class, содержащий байт-код программы. Напомним, что байт-код не является исполняемым, но интерпретируется виртуальной машиной Java. Таким образом, результат компиляции в javac нельзя запускать на выполнение непосредственно.
Для запуска скомпилированной программы следует воспользоваться интерпретатором java. В качестве параметра ему нужно передать имя класса Example в командной строке: C:\>java Example
В результате выполнения программы на экран будет выведена следующая строка: Java drives the Web.
При компиляции исходного кода Java каждый класс помещается в отдельный выходной файл, называемый по имени класса и получающий расширение .class. Именно по этой причине и выдвигается требование, чтобы имя исходного файла программы на Java в точности соответствовало имени содержащегося в нем класса, а по существу, — имени файла с расширением .class. При вызове интерпретатора Java ему передается имя класса, предназначенного для выполнения (пример такого вызова приведен выше). В результате интерпретатор автоматически находит файл с указанным именем и расширением . class. Обнаружив этот файл, интерпретатор выполняет код, указанный в классе.
На заметку Если при попытке скомпилировать программу компилятор javac не будет найден, вам придется указать полный путь к инструментальным средствам JDK, доступным из командной строки, при условии, что комплект JDK установлен правильно. В Windows это, например, означает, что вам нужно ввести путь к доступным из командной строки инструментальным средствам JDK в переменной окружения PATH. Так, если комплект JDK 7 установлен в выбираемых по умолчанию каталогах, путь к его инструментальным средствам будет следующим: C:\Program Files\Java\j dkl. 7 . 0\bin. (Разумеется, в этом пути может быть указана другая версия JDK.) Чтобы узнать,
или 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 , рассмотрим вкратце ее составные части.