Апплет означает «небольшое приложение». Это стало широко использоваться для описания Java-апплетов, встроенных в веб-страницы. И в этом контексте апплеты можно рассматривать как устаревшую технологию.

Апплет

Апплет означает «небольшое приложение». Этот термин стал широко использоваться для описания апплетов Java , встроенных в веб-страницы, в той степени, в которой элемент апплета на основе HTML предназначен для встраивания апплетов Java.

Это сказанное:

  • Апплет не должен быть встроен в веб-страницу
  • Апплет не должен быть написан на Java
  • Многие встроенные Java-апплеты не являются «маленькими»

Постепенно этот термин возвращается к своему первоначальному значению. В более общем смысле это может быть применено к (например) параметрам операционной системы или апплетам конфигурации. Такие апплеты, специфичные для ОС, обычно не пишутся с использованием Java.

Покрывая общий смысл и признавая, что общее использование «апплета» все еще остается «Java-апплетом», оставшаяся часть этой статьи будет посвящена апплетам Java.


Java-апплет

Глядя из конкретного контекста Java-апплета, важно понять, что ни один современный браузер больше не поддерживает плагины Java; и, следовательно, Java-апплеты больше не поддерживаются! Это означает: Java-апплеты можно рассматривать как продукт, достигший «конца жизни»; его больше нельзя использовать при разработке новых продуктов; Апплеты актуальны только в смысле «как от них уйти».

Апплеты Java - это приложения, написанные с использованием языка программирования Java, которые встроены в веб-страницы. Апплеты обычно предоставляют динамическую функциональность, которая не поддерживается простым HTML или комбинацией HTML и JavaScript .

Возможно, по иронии судьбы, функциональность JavaScript иногда вызывается из апплетов Java для достижения того, что апплеты не могут сделать самостоятельно. Кроме того, deployJava.js JavaScript, предоставляемый Oracle, предназначен для запуска апплетов после проверки установки подходящей минимальной версии Java. В то время как Java может делать то, что JavaScript не может - большинство современных апплетов не продвинулись бы слишком далеко, если бы JavaScript был отключен в браузере пользователя!

Многие «книги для начинающих» по Java, кажется, бросаются в разработку апплета на ранних стадиях в книга. Это огромная ошибка. Любой текст, который делает это, следует считать подозрительным.

Хотя апплеты могут показаться легкими в разработке, на самом деле они довольно хитры. Надежное развертывание апплета для «всех желающих» (или, по крайней мере, для подавляющего большинства) в WWW на порядок сложнее. Для получения дополнительной информации см. Почему учителя CS должны прекратить обучение Java-апплетам , запись в блоге самого популярного поставщика ответов для тега апплета.

Java-апплет API предоставляет методы, считающиеся удобными для веб-приложений. К ним относятся методы получения изображений и аудиоклипов, обнаружения и взаимодействия с другими апплетами, определения базы кода и базы документов (где я?), Чтобы позволить относительные ссылки на ресурсы (изображения, клипы, текстовые файлы и т. Д.), Которые апплет может использовать.

Апплеты могли быть встроены в веб-страницы начиная с Java 1.1. Вместе с Java 1.2 появилась Java Web Start , которая могла запускать как приложения, так и апплеты как свободно плавающие объекты (не встроенные в веб-страницу). С выпуском Java 1.6.0_10 апплеты могут оставаться встроенными в веб-страницы, но они также получают доступ к функциональности JWS и службам JNLP API.

Пример апплета Hello World

Для этого примера требуется установленный Java Development Kit. Посетите Java SE Downloads для получения последней версии JDK.

/* <!-- Defines the applet element used by the appletviewer. --> <applet code='HelloWorld' width='200' height='100'></applet> */ import javax.swing.*; /** An 'Hello World' Swing based applet. To compile and launch: prompt> javac HelloWorld.java prompt> appletviewer HelloWorld.java */ public class HelloWorld extends JApplet { public void init() { // Swing operations need to be performed on the EDT. // The Runnable/invokeAndWait(..) ensures that happens. Runnable r = new Runnable() { public void run() { // the crux of this simple applet getContentPane().add( new JLabel("Hello World!") ); } }; SwingUtilities.invokeAndWait(r); } } 

См. Также