Java-программа — это набор из одного или нескольких классов, причем один из них содержит точку начала выполнения программы.
Файл исходного кода Java может содержать более чем одно определение класса, но в соответствии с требованиями Java 2 SDK только один класс в файле исходного кода может иметь видимость public
. Имя файла исходного кода включает имя этого открытого класса с расширением .java
.
Каждое описание класса в файле исходного кода компилируется в отдельный class-файл, содержащий байт-код Java. Имя этого файла состоит из имени класса с расширением .class
. Все программы должны быть скомпилированы до того, как они будут выполнены. Java 2 SDK предоставляет набор инструментов для этой цели.
Для создания приложения на Java программа должна иметь класс, который содержит метод с именем main
. Метод main()
в классе служит стартовой точкой для выполнения любого приложения.
Пример 1.4 — это пример приложения, в котором клиент использует класс CharStack
для оборачивания строки символов.
Пример 1.4. Приложение
public class Client {
public static void main(String[] args) {
// Создание стека
CharStack stack = new CharStack(40);
// Создание строки, помещаемой в стек
String str = "!no tis ot nuf era skcatS";
int length = str.length();
System.out.println("Original string: " + str);
// Помещаем строку посимвольно в стек
for (int i = 0; i<length; i++) {
stack.push(str.charAt(i));
}
System.out.print("Reversed string: ");
// Выталкиваем символы из стека и выводим каждый из них на экран
while (!stack.isEmpty()) {
System.out.print(stack.pop());
}
System.out.println();
}
}
Вывод программы:
Original string: !no tis ot nuf era skcatS
Reversed string: Stacks are fun to sit on!
Общедоступный (public) класс Client
содержит метод с именем main
. Для того чтобы запустить приложение, метод main()
в этом общедоступном public-классе вызывается Java-интерпретатором, иначе называемым виртуальной машиной Java (JVM).
Метод main()
следует объявлять, как показано ниже:
public static void main(String[] args) {
// ...
}
Метод main()
имеет доступ public
, т.е. он доступен из любого класса. Ключевое слово static
означает, что метод принадлежит классу (статический). Ключевое слово void
означает, что метод не возвращает значений. Список параметров String[] args
представляет массив строк, которые используются для передачи информации в метод main()
в момент запуска.
Исходный файл Java может быть скомпилирован с использованием Java-компилятора javac
, который является частью Java 2 SDK.
Исходный файл Client.java
содержит описание класса Client
. Исходный класс может быть скомпилирован, если в командной строке ввести следующее:
javac Client.java
В результате будет создан class-файл Client.class
, содержащий байт-код Java для класса Client
. Класс Client
использует класс CharStack
, и если файл CharStack.class
еще не существует, то компилятор также скомпилирует файл исходного кода CharStack.java
.
Скомпилированные классы могут быть выполнены Java-интерпретатором java
, который также является частью Java 2 SDK. Пример 1.4 может быть выполнен, если в командной строке ввести следующее:
java Client
Обратите внимание, что задается только имя класса, результат — начало выполнения метода main()
из определенного класса. Приложение в примере 1.4 завершится, когда завершится выполнение метода main()
.
Основные принципы Java | Тест по теме «Введение в Java» |