
- •Глава 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 37
Как можно было видеть, именно через применение инкапсуляции, наследования и полиморфизма отдельные части трансформируются в объект, известный как автомобиль. То же самое справедливо и для компьютерных программ. Применяя объектно-ориентированные принципы, разные части сложной программы можно объединить вместе в форму взаимосвязанного, устойчивого и легко обслуживаемого целого.
Как упоминалось в начале этого раздела, каждая Java-программа объектно-ориентирована. Или точнее, каждая Java-программа включает инкапсуляцию, наследование и полиморфизм. Хотя примеры коротких программ, показанных в конце этой и в нескольких следующих главах, возможно, не проявляют этих свойств, они, тем не менее, присутствуют в них. Как вы увидите далее, многие из свойств, обеспечиваемых языком Java, являются частью встроенных в него библиотек классов, которые широко используют инкапсуляцию, наследование и полиморфизм.
Первая простая программа
Теперь, когда объектно-ориентированные основы языка Java были обсуждены, посмотрим на некоторые реальные программы. Начнем с компиляции и выполнения короткой программы, представленной ниже. Как вы увидите, она включает немного больше работы, чем можно было бы представить.
/*
Это простая Java-программа. Назовите этот файл "Example.Java". V class Example {
// Программа начинается с вызова main(). public static void main(String args[]). {
System.out.println("Это простая Java-программа."); } }
С Замечание )
Последующие описания используют стандартный набор инструментальных средств разработчика JDK (Java Developer's Kit) фирмы Sun Microsystems. Если вы используете другую среду разработки, то, возможно, придется следовать иным процедурам для компиляции и выполнения Java-программ.
Ввод программы
Для большинства компьютерных языков имя файла, который содержит исходный код программы, является произвольным. Для языка Java это не так. Первое, что вы должны изучить в языке Java, это то, что имя, которое вы
38 Часть I. Язык Java
присваиваете исходному файлу, очень важно. Например, имя исходного файла должно быть Example.java. Посмотрим почему.
В Java исходный файл официально называют единицей компиляции (compilation unit). Это текстовый файл, который содержит одно или несколько определений классов. Компилятор Java требует, чтобы исходный файл использовал расширение .java. Заметим, что расширение имени файла имеет длину в четыре символа. Как вы можете заметить, ваша операционная система должна поддерживать длинные имена файлов. Это означает, что DOS и Windows 3.1 не способны поддерживать язык Java (по крайней мере, в настоящее время). Однако Windows 95/98 и Windows NT имеют такую возможность.
Глядя на программу можно заметить, что имя класса, определенное в программе, тоже Example. Это не совпадение. В Java весь код должен находиться внутри класса. По соглашению имя этого класса должно быть согласовано с именем файла, который содержит программу. Вы должны также убедиться в согласовании прописных букв в именах файла и класса. Причина в том, что язык Java чувствителен к регистру клавиатуры. Здесь соглашение о том, чтобы имена файлов соответствовали именам классов, может показаться произволом. Однако это соглашение делает более простым поддержку и организацию ваших программ.
Компиляция программы
Чтобы откомпилировать программу Example, запустите КОМПИЛЯТОР javac,
указав в параметре командной строки имя исходного файла:
C:\>javac Example.java
Компилятор javac создает файл с именем Example.class, который содержит программу в виде байт-кода. Как обсуждалось ранее, байт-код Java — это промежуточное представление программы, состоящее из инструкций, которые будет выполнять интерпретатор Java. Таким образом, результат работы компилятора javac не является непосредственно выполняемым кодом.
Для действительного выполнения программы следует использовать Java-интерпретатор с именем java. Командная строка запуска интерпретатора выглядит так:
C:\>java Example
После выполнения программы на экран выводится строка:
Это простая Java-программа.
После компиляции исходного кода каждый индивидуальный класс помещается в собственный выходной файл, имя которого совпадает с именем этого класса, и расширением .class. Присвоение исходному файлу того же имени, что и содержащемуся в нем классу — неплохая идея, так как имя исходного