
- •Глава 2
- •Глава 2. Обзор языка Java 31_
- •Глава 2. Обзор языка Java
- •Глава 2. Обзор языка Java 37
- •Глава 2. Обзор языка Java 39
- •Глава 2. Обзор языка Java 41
- •Часть I. Язык Java
- •Глава 2. Обзор языка Java 43_
- •Глава 2. Обзор языка Java 45_
- •Глава 2. Обзор языка Java 47
- •Глава 2. Обзор языка Java 49_
- •Часть I. Язык Java
- •Глава 2. Обзор языка Java 57
- •Глава 3
- •Глава 3. Типы данных, переменные и массивы 53
- •Глава 3. Типы данных, переменные и массивы _ 55
- •Глава 3. Типы данных, переменные и массивы
- •Глава 3. Типы данных, переменные и массивы 59_
- •Глава 3. Типы данных, переменные и массивы 61_
- •Глава 3. Типы данных, переменные и массивы
- •Глава 3. Типы данных, переменные и массивы 65_
- •Часть I. Язык Java
- •Глава 3. Типы данных, переменные и массивы 67_
- •Часть I. Язык Java
- •Глава 3. Типы данных, переменные и массивы 69_
- •Глава 3. Типы данных, переменные и массивы 71_
- •Глава 3. Типы данных, переменные и массивы 73_
- •Глава 3. Типы данных, переменные и массивы
- •Часть I. Язык Java
- •Глава 3. Типы данных, переменные и массивы _ 77_ Эта программа генерирует следующий вывод:
- •Глава 3. Типы данных, переменные и массивы 79
- •Часть I. Язык Java
- •Глава 3. Типы данных, переменные и массивы 81_
- •Глава 4
- •Глава 4. Операции 83
- •84 Часть I. Язык Java
- •Глава 4. Операции 85_
- •Глава 4. Операции 87_
- •88_ Часть I. Язык Java
- •Глава 4. Операции 89
- •Глава 4. Операции 91_
- •Глава 4. Операции 93_
- •Глава 4. Операции 95_
- •Глава 4. Операции 97_
- •Глава 4. Операции 99
- •Глава 4. Операции 101
- •Глава 4. Операции 103
- •104 Часть I, Язык Java
- •Глава 4. Операции 105
- •Глава 5
- •Глава 5, Управляющие операторы 107
- •Глава 5. Управляющие операторы 109
- •110 Часть I. Язык Java
- •Глава 5, Управляющие операторы 111
- •Глава 5. Управляющие операторы 113
- •Глава 5. Управляющие операторы
- •Глава 5. Управляющие операторы 117
- •118 Часть I. Язык Java
- •Глава 5. Управляющие операторы 119
- •Глава 5. Управляющие операторы 121
- •122 Часть I. Язык Java
- •Глава 5. Управляющие операторы 123
- •Глава 5. Управляющие операторы 125
- •Глава 5. Управляющие операторы 127
- •Глава 5. Управляющие операторы 129
- •Глава 5. Управляющие операторы
- •Глава 6
- •134 Часть I. Язык Java
- •Глава 6. Введение в классы 135
- •136 Часть I. Язык Java
- •Глава 6. Введение в классы _ 137
- •Глава 6. Введение в классы 139
- •Глава 6. Введение в классы
- •Глава 6. Введение в классы 143
- •Глава 6. Введение в классы 145
- •Глава 6. Введение в классы 147
- •Глава 6. Введение в классы 149
- •Глава 6. Введение в классы 151
- •154 Часть I. Язык Java
- •Глава 6. Введение в классы 155
- •Глава 6. Введение в классы 157
- •Глава 7
- •Глава 7. Методы и классы 159
- •Глава 7. Методы и классы . 161
- •Глава 7. Методы и классы • 163
- •164 Часть I. Язык Java
- •Глава 7. Методы и классы 165
- •Глава 7. Методы и классы 167
- •Глава 7. Методы и классы 169
- •Глава 7, Методы и классы 171-
- •Глава 7. Методы и классы 173
- •Глава 7. Методы и классы 775
- •Глава 7. Методы и классы 177
- •Глава 7. Методы и классы ' 179
- •Глава 7. Методы и классы 1_81_
- •Глава 7. Методы и классы 1_83
- •184 '• Часть I. Язык Java
- •Глава 7. Методы и классы . 185
- •Глава 7. Методы и классы 187
- •Глава 8
- •Глава 8. Наследование 191
- •Глава 8. Наследование 193
- •Глава 8, Наследование 195
- •Глава 8. Наследование 197
- •198 Часть I. Язык Java
- •Глава 8, Наследование 199
- •Глава 8. Наследование 201
- •202 Часть I. Язык Java
- •Глава 8. Наследование 203
- •Глава 8. Наследование 205
- •Глава 8. Наследование 207
- •Глава 8. Наследование 209
- •Глава 8. Наследование 211
- •Глава 8. Наследование 213
- •Глава 8. Наследование 215
- •Глава 8. Наследование 217
- •Глава 12
- •Глава 12. Ввод/вывод, апплеты и другие темы 303_
- •Глава 12. Ввод/вывод, апплеты и другие темы . 305
- •Глава 12. Ввод/вывод, алплеты и другие темы 307
- •Глава 12. Ввод/вывод, апплеты и другие темы 309
- •Глава 12. Ввод/вывод, апплеты и другие темы 311
- •Глава 12. Ввод/вывод, апплаты и другие темы 313
- •314 Часть I. Язык Java
- •Глава 12. Ввод/вывод, апплеты и другие темы 315
- •Глава 12. Ввод/вывод, апплеты и другие темы 317
- •Глава 12. Ввод/вывод, апплеты и другие темы 319
- •320 Часть I. Язык Java
- •Глава 12. Ввод/вывод, апплеты и другие темы 321
- •Глава 12. Ввод/вывод, апплеты и другие темы 323
- •324 Часть I. Язык Java
- •Глава 12. Ввод/вывод, апплеты и другие темы 325
- •326 Часть I. Язык Java
- •Глава 12. Ввод/вывод, апплегы и другие темы 327
Глава 2. Обзор языка Java 39
файла будет согласовано с именем class-файла. Когда вы запускаете интерпретатор Java, вы в действительности специфицируете имя класса, который должен исполнить интерпретатор. Он автоматически отыскивает файл с тем же именем и расширением .class. Если интерпретатор находит такой файл, то он выполняет код, содержащийся в указанном классе.
Подробный взгляд на первую программу
Хотя программа Example.java очень короткая, она содержит некоторые ключевые свойства, общие для всех Java-программ. Рассмотрим поближе каждую часть программы.
Л
Это простая Java-программа .
Назовите этот файл "Example.java". */
Это комментарий. Как и большинство других языков программирования, Java позволяет вводить замечания в исходный программный файл. Содержимое комментария игнорируется компилятором. Комментарий описывает и объясняет работу программы всем, кто читает исходный код. В нашем случае комментарий описывает программу и напоминает, что исходный файл должен быть назван Example.java. Конечно, в реальных приложениях комментарий, в общем случае, объясняет, как работает некоторая часть программы или какими специфическими свойствами она обладает.
Java поддерживает три стиля комментариев. Первый, показанный в начале нашей программы, называют многострочным комментарием. Этот тип комментария должен начинаться символами /* и заканчиваться */. Все символы, находящиеся между этими парами, игнорируются компилятором. Как понятно из названия, многострочный комментарий может состоять из нескольких строк.
Следующая строка кода программы:
class Example {
Эта строка использует ключевое слово class для объявления, что определяет новый класс. Example — это идентификатор, являющийся именем класса. Полное определение класса, включающее все его члены, размещается между открывающей ({) и закрывающей (}) фигурными скобками. Использование фигурных скобок в Java аналогично способу их использования в С и C++.
Сейчас не очень беспокойтесь о деталях класса, за исключением того, что в Java вся программная активность происходит внутри класса. Это одна из причин, почему Java-программы (хотя бы немного) объектно-ориентированы.
Следующая строка в программе — однострочный комментарий:
II Программа начинается с вызова main О .
40 Часть I. Язык Java
Это второй тип комментариев, поддерживаемых в Java. Однострочный комментарий начинается символами // и завершается в конце строки. Вообще, программисты используют многострочные комментарии для длинных заметок, а однострочные — для кратких построчных описаний.
Следующая строка кода:
public static void main(String args [] ) {
Эта строка заголовка метода main (). Как подсказывает предшествующий комментарий, отсюда начнется выполнение программы. Все приложения Java начинают выполнение с вызова main(). (Точно так же, как в C/C++.) Определенного значения каждой части этой строки сейчас дать нельзя потому, что это требует детального понимания подхода Java к инкапсуляции. Однако, поскольку большинство примеров Части I этой книги будет использовать подобную строку кода, давайте бросим беглый взгляд на каждую часть сейчас.
Ключевое слово public — это спецификатор доступа, который позволяет программисту управлять видимостью членов класса. Когда члену класса предшествует public, то к этому члену возможен доступ из кода, внешнего по отношению к классу, в котором данный метод описан. (Противоположностью public является ключевое слово private, которое предохраняет член от использования кодом, определенным вне данного класса.) В рассматриваемом случае main () необходимо объявить как public, т. к. он должен вызываться кодом извне своего класса при старте программы. Ключевое слово static позволяет методу main о быть вызванным без наличия экземпляров специфического класса. Оно необходимо, т. к. main () вызывается интерпретатором Java перед тем, как создается какой-либо объект. Ключевое слово void просто говорит компилятору, что main () не возвращает значения. Как вы увидите далее, методы могут также и возвращать значения. Если все это кажется немного сбивающим с толку, не волнуйтесь. Все эти концепции будут обсуждены детально в следующих главах.
Итак, main () — это метод, вызываемый, когда Java-приложение начинает выполняться. Имейте в виду, что Java чувствителен к регистру. Таким образом, Main отличается от main. Важно также понимать, что компилятор Java будет компилировать классы, которые не содержат метода main (). Но у него нет способа выполнять эти классы. Так, если бы вы ввели Main вместо main, компилятор еще бы откомпилировал вашу программу. Однако интерпретатор Java сообщил бы об ошибке потому, что у него не было бы возможности
НАЙТИ метод main () .
Любая информация, которую нужно передать методу, принимается переменными, специфицированными в скобках, следующих за именем метода. Эти переменные называют параметрами. Если нет параметров, необходимых для данного метода, все равно нужно указывать пустые скобки. Для main () существует только один параметр, хотя и сложный. String args[] объявляет параметр с именем args, являющийся массивом экземпляров класса string.