4.1 Апплеты
Кроме приложений, язык Java позволяет создавать апплеты (applets). Это программы, работающие в среде другой программы -- браузера. Апплеты не нуждаются в окне верхнего уровня -- им служит окно браузера. Они не запускаются JVM -- их загружает браузер, который сам запускает JVM для выполнения апплета. Эти особенности отражаются на написании программы апплета.
С точки зрения языка Java, апплет -- это всякое расширение класса Applet, который, в свою очередь, расширяет класс panel. Таким образом, апплет -- это панель специального вида, контейнер для размещения компонентов с дополнительными свойствами и методами. Менеджером размещения компонентов по умолчанию, как и в классе Panel, служит FiowLayout. Класс Applet находится в пакете java. applet, в котором кроме него есть только три интерфейса, реализованные в браузере. Надо заметить, что не все браузеры реализуют эти интерфейсы полностью.
Поскольку JVM не запускает апплет, отпадает необходимость в методе main (), его нет в апплетах.
В апплетах редко встречается конструктор. Дело в том, что при запуске первого создается его контекст. Во время выполнения конструктора контекст еще не сформирован, поэтому не все начальные значения удается определить в конструкторе.
Начальные действия, обычно выполняемые в конструкторе и методе mamo, в апплете записываются в метод inito класса Applet. Этот метод автоматачески запускается исполняющей системой Java браузера сразу же после загрузки апплета. Вот как он выглядит в исходном коде класса Applet:
public void init(){}
Негусто! Метод init () не имеет аргументов, не возвращает значения и должен переопределяться в каждом апплете -- подкласре класса Applet. Обратные действия -- завершение работы, освобождение ресурсов -- записываются при необходимости в метод destroy о, тоже выполняющийся автоматически при выгрузке апплета. В классе Applet есть пустая реализация этого метода.
Кроме методов init() и destroy() в классе Applet присутствуют еще два пустых метода, выполняющихся автоматически. Браузер должен обращаться к методу start() при каждом появлении апплета на экране и обращаться к методу stop(), когда апплет уходит с экрана. В методе stop() можно определить действия, приостанавливающие работу апплета, в методе start() -- возобновляющие ее. Надо сразу же заметить, что не все браузеры обращаются к этим методам как должно.
- Введение
- Глава 1 Основы Java
- 1.1 Выполнение Java-программы
- 1.2 Что такое JDK
- Глава 2 Объектно-ориентированное программирование в Java
- 2.1 Принципы объектно-ориентированного программирования
- Глава 3 Принципы построения графического интерфейса
- 3.1 Компонент и контейнер
- Глава 4 Апплеты
- 4.1 Апплеты
- 4.2 Параметры тега <applet>
- 4.3 Сведения об окружении апплета
- 4.4 Изображение и звук
- Заключение