Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Текст лекции Апплеты .doc
Скачиваний:
2
Добавлен:
01.03.2025
Размер:
202.75 Кб
Скачать

Аплеты

На языке Java можно создавать особые программы (называемые аплетами), которые загружаются из Сети Интернет и выполняются браузерами. Они предназначаются для того, чтобы освободить пользователей от процесса инсталлирования программного обеспечения, предоставив им доступ к программам с любого компьютера, поддерживающего язык Java, или устройства, имеющего выход в Интернет. Компания Sun развивает этот подход. Не так давно была разработана технология называется Java Web Start. В ней идея аплетов поучила свое развитие, в частности исправлены некоторые из недостатков, характерных для аплетов.

Основная идея, положенная в основу использования аплетов на Web-страницах, довольно проста: страница, описанная на языке HTML, должна сообщать браузеру, какой аплет загрузить и где его разместить. Как и следовало ожидать, дескриптор, необходимый для использования аплета, должен сообщать браузеру следующую информацию.

  • Откуда получить файлы с классами.

  • Как расположить аплет на странице (его размеры, координаты и т.д.).

Браузер загружает файлы с классами из сети (или из каталога на компьютере пользователя) и автоматически запускает аплет на выполнение, используя виртуальную машину языка Java (Java Virtual Machine). Кроме аплетов, Web-страница может содержать все остальные элементы языка HTML: разнообразные шрифты, маркированные списки, графические изображения и т.д. Аплеты — это всего лишь часть гипертекстовой страницы. Всегда стоит иметь в виду, что язык Java не является средством для разработки гипертекстовых страниц. Это инструмент, позволяющий их оживлять. Отсюда вовсе не следует, что элементы графического пользовательского интерфейса в аплете, написанном на языке Java, не важны. Однако эти элементы должны быть согласованы с соответствующим дизайном Web-страницы, созданным с помощью языка HTML.

Основы аплетов

Все аплеты являются подклассами Applet. Таким образом, они должны импортировать java.applet, а также java.awt. AWT — сокращение Abstract Window Toolkit (абстрактный оконный интерфейс). Так как все аплеты выполняются в окне, необходимо включить поддержку для этого окна. Аплеты не исполняются Java-интерпретатором времени выполнения, работающим в консольном режиме. Они выполняются Web-браузером.

Выполнение аплета не начинается с метода main(). Вывод в окно аплета не выполняется методом System.out.println().

Можно использовать, например drawstring(), который выводит строку в указанную точку экрана. Ввод также обрабатывается иначе, чем в приложении.

Как только аплет откомпилирован, он включается в HTML-файл, используя тег <applet>. Аплет будет выполняться Java-совместимым браузером, когда тот встретит в HTML-файле указанный тег. Для более удобного просмотра и проверки аплета включите в начало файла исходного кода Java-комментарий, который содержит тег <applet>. Этим способом ваш код документируется вместе с инструкциями HTML, необходимыми аплету. Например:

/*

<applet code="MyApplet" width=200 height=60>

</applet>

*/

Этот комментарий содержит тег <applet>, который выполнит аплет с именем MyApplet в окне с размерами 200x60 пикселей

Класс Applet

Класс Applet определяет методы, представленные в таблице (ниже). Этот класс обеспечивает всю необходимую поддержку для выполнения аплетов.

Методы, определенные в классе Applet

Метод

Описание

void destroy()

Освобождает все ресурсы, занятые аплетом. Вызывается браузером непосредственно перед тем, как аплет завершается. Ваш аплет переопределит данный метод, если потребуется выполнить какую-нибудь дополнительную чистку перед его выполнением

AppletContext getAppletContext()

Возвращает контекст, связанный с апплетом

String getAppletInfo()

Возвращает строку, которая описывает аплет

AudioClip getAudioClip(URL url)

Возвращает объект AudioClip, который инкапсулирует аудиоклип, найденный по адресу, указанному в url

AudioClip getAudioClip(URL url, String clipName)

Возвращает объект AudioClip, который инкапсулирует аудиоклип, найденный по адресу, указанному в url, и имеющий имя, указанное в параметре clipName

URL getCodeBase()

Возвращает URL, связанный с вызывающим аплетом

URL getDocumentBase()

Возвращает URL HTML-документа, который вызывает аплет

Image getImage(URL url)

Возвращает объект image, который инкапсулирует изображение, найденное по адресу url

Image getImage(URL url, String imageName)

Возвращает объект image, который инкапсулирует изображение, найденное по адресу url, и имеющий имя, указанное в параметре imageName

Locale getLocale()

Возвращает объект Locale, который используется различными чувствительными к локализации классами и методами

String getParameter(String paramName)

Возвращает параметр, указанный в pararnName. Если указанный параметр не найден, возвращается null (пустой указатель)

String[] [] getParameterInfo()

Возвращает таблицу строк, описывающую параметры, распознанные аплетом. Каждый вход в таблицу должен состоять из трех строк, которые содержат имя параметра, описание его типа и/или диапазона, и объяснения его цели

void init()

Вызывается, когда аплет начинает выполнение. Это первый метод, который вызывается для любого аплета

boolean isActive()

Возвращает true, если аплет был запущен. Возвращает false, если аплет был остановлен

static final AudioClip newAudioClip(URL url)

Возвращает объект AudioClip, который инкапсулирует аудиоклип, найденный по адресу ur1. Этот метод подобен getAudioClip () за исключением того, что он статический и может быть выполнен без потребности в Applet-объекте. (Добавлен в Java 2.)

void play (URL url)

Если аудиоклип найден по адресу url, то он проигрывается

void play (URL url, String clipName)

Если аудиоклип найден по адресу url с именем clipName, то клип проигрывается

void resize(Dimension dim)

Изменяет размеры аплета согласно измерениям, указанным в dim.

Dimension — это класс пакета java.awt. Он содержит два целочисленных поля:

width и height

void resize(int width, int height)

Изменяет размеры аплета согласно размерам, указанным в width и height

void showStatus(String str)

Отображает значение параметра str в окне состояния браузера или программы просмотра аплета. Если браузер не поддерживает окно состояния, то никакое действие не выполняется

void start()

Вызывается браузером, когда аплет должен запустить (или возобновить) выполнение. После init() (когда аплет впервые начинает выполнение) вызывается автоматически

void stop()

Вызывается браузером, чтобы приостановить выполнение аплета. После остановки аплет перезапускается, когда браузер вызывает start()