Второй пример короткой программы
Второй пример короткой программы Вероятно, ни одна другая концепция не является для языка программирования столь важной, как концепция переменных. Как вы, вероятно, знаете, переменная – это именованная ячейка памяти, которой может быть присвоено значение внутри программы. Во время выполнения программы значение переменной может изменяться. Следующая программа демонстрирует способы объявления переменной и присвоения ей значения. Она иллюстрирует также некоторые новые аспекты консольного вывода. Как следует из комментариев в начале программы, этому файлу нужно присвоить имя 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 проверяет все выражения и параметры на предмет совместимости типов. Любые несоответствия типов являются ошибками, которые должны быть исправлены до завершения компиляции класса. Элементарные типы Java определяет восемь элементарных типов данных: byte, short, int, long, char, float, double и boolean. Часто элементарные типы называют также простыми типами или дататипам. Элементарные типы можно разделить на четыре группы. · Целочисленные. Эта группа включает в себя типы byte, short, int и long, которые представляют точные целые числа со знаком. · Числа с плавающей точкой. Эта группа включает в себя типы float и double, которые представляют числа, определенные с точностью до определенного десятичного знака. · Символы. Эта группа включает в себя тип char, которая представляет символы символьного набора, такие как буквы и цифры. · Булевские значения. Эта группа включает в себя тип boolean – специальный тип, предназначенный для представления значений типа истинно/ложно. Эти типы можно использовать в том виде, как они определены, или же для создания собственных типов классов. Таким образом, они служат основой для всех других типов данных, которые могут быть созданы. Элементарные типы представляют одиночные значения, а не сложные объекты. Хотя во всех других отношениях Java – полностью объектно-ориентированный язык, элементарные типы данных таковыми не являются. Они аналогичны простым типам, которые можно встретить в большинстве других не объектно-ориентированных языков.
Эта особенность обусловлена стремлением обеспечить максимальную эффективность. Превращение элементарных типов в объекты привело бы к слишком большому снижению производительности. Элементарные типы определены так, чтобы они обладали явной областью допустимых значений и математически строгим поведением. Языки вроде C и C++ допускают варьирование размеров целочисленных переменных в зависимости от требований среды выполнения. Однако Java отличается в этом отношении. В связи с требованием переносимости, предъявляемым к Java-программам, все типы данных обладают строго определенной областью допустимых значений. Например, независимо от конкретной платформы, значения типа int всегда являются 32-битными. Это позволяет создавать программы, которые гарантированно будут выполняться в любой машинной архитектуре без специального переноса. Хотя в некоторых средах строгое указание размера целых чисел может приводить к незначительному снижению производительности, оно абсолютно необходимо для обеспечения переносимости программ.
Воспользуйтесь поиском по сайту: ©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...
|