АБОБА. Справочник по программированию на Java Методическое пособие
Скачать 242.41 Kb.
|
Второй пример короткой программыВероятно, ни одна другая концепция не является для языка программирования столь важной, как концепция переменных. Как вы, вероятно, знаете, переменная – это именованная ячейка памяти, которой может быть присвоено значение внутри программы. Во время выполнения программы значение переменной может изменяться. Следующая программа демонстрирует способы объявления переменной и присвоения ей значения. Она иллюстрирует также некоторые новые аспекты консольного вывода. Как следует из комментариев в начале программы, этому файлу нужно присвоить имя Example2.java. /* Это еще один короткий пример. */ class Example2 { public static void main(String args[]) { int num; // эта строка объявляет переменную по имени num num = 100; // эта строка присваивает переменной num значение, //равное 100 System.out.println("Это переменная num: " + num); num = num * 2; System.out.print("Значение переменной num * 2 равно "); System.out.println(num); } } При запуске этой программы на экране отобразится следующий вывод: Это переменная num: 100 Значение переменной num * 2 равно 200 Рассмотрим генерацию этого вывода подробнее. Первая, еще не знакомая читателям, строка этой программы: int num; // эта строка объявляет переменную по имени num Она объявляет целочисленную переменную num. Java (подобно большинству других языков) требует, чтобы переменные были объявлены до их использования. В приведенном примере программы строка num = 100; // эта строка присваивает переменной num значение, //равное 100 , присваивает переменной num значение 100. В Java символом операции присваивания служит одиночный знак равенства, как и в языках C/C++. Специфику этих операций и операторов подробно мы разбирать не будем, считая, что их работа известна читателю. Следующая строка кода выводит значение переменной num, которому предшествует текстовая строка "Это переменная num:". System.out.println("Это переменная num: " + num); В этом операторе знак плюса вызывает дописывание значения переменной num в конец предшествующей строки и вывод результирующей строки. В действительности значение переменной num вначале преобразуется из целочисленного в строковый эквивалент, а затем объединяется с предшествующей строкой. Подробнее этот процесс еще будет описан. Этот подход можно обобщить. Используя символ операции +, внутри одного оператора println() можно объединять любое необходимое количество строк. Следующая строка кода присваивает переменной num значение этой переменной, умноженное на 2. Как и в большинстве других языков, в Java символ операции * служит для указания операции умножения. После выполнения этой строки кода переменная num будет содержать значение, равное 200. Следующие две строки программы выглядят так: System.out.print("Значение переменной num * 2 равно "); System.out.println(num); В них выполняется несколько новых действий. Во-первых, метод print() используется для отображения строки "Значение переменной num * 2 равно". За этой строкой не следует символ новой строки. То есть следующий генерируемый вывод будет отображаться в той же строке. Метод print() полностью подобен методу println(), за исключением того, что после каждого вызова он не генерирует символ новой строки. Теперь рассмотрим вызов метода println(). Обратите внимание, что имя переменной num используется само по себе. И print(), и println() могут применяться для вывода значений любых встроенных типов Java. Типы данных и переменныеJava поддерживает несколько типов данных. Эти типы можно применять для объявления переменных и создания массивов. Как будет показано, подход к использованию этих компонентов, примененный в Java, прост, эффективен и целостен. Java – строго типизированный языкПрежде всего, важно уяснить, что Java – строго типизированный язык. Действительно, в определенной степени безопасность и надежность Java-программ обусловлена именно этим обстоятельством. Давайте разберемся, что это означает. Во-первых, каждая переменная обладает типом, каждое выражение имеет тип, и каждый тип строго определен. Вовторых, все присваивания, как явные, так и посредством передачи параметров в вызовах методов, проверяются на соответствие типов. В Java отсутствуют какие-либо средства автоматического приведения или преобразования конфликтующих типов, как это имеет место в некоторых языках. Компилятор Java проверяет все выражения и параметры на предмет совместимости типов. Любые несоответствия типов являются ошибками, которые должны быть исправлены до завершения компиляции класса. |