к апплетов.апплети в більшості браузерів виконуються в «пісочниці», запобігаючи їх доступ до локальних даних. Код аплету завантажується з веб-сервера, і браузер або вставляє аплет у веб-сторінку, або відкриває нове вікно з власним користувача інтерфейсом аплету. Аплет може бути відображений на веб-сторінці шляхом використання застарілого HTML елемента applet, або рекомендованого елемента object. Цим визначається місце розташування і джерело аплету.
Головний клас аплета розширює клас java.applet.Applet або, якщо створюється Swing аплет, javax.swing.JApplet. Клас повинен перевизначити методи створення користувальницького інтерфейсу всередині себе. (Applet є нащадком Panel, який, у свою чергу, є нащадком Container).
Переваги використання Java-аплетів
кроссплатформенность
аплет може працювати на «всіх» встановлених до цього часу версіях Java, а не тільки з останньою версією; проте, якщо аплет вимагає останню версію JRE, то клієнт буде змушений чекати більш тривалої завантаження;
аплет підтримується більшістю браузерів;
він кешується в більшості браузерів, а тому буде швидко завантажуватися при поверненні на веб-сторінку; але аплет може зберігатися в кеші і створювати проблеми після виходу нових версій;
він може мати повний доступ до машини, на якій виконується, якщо користувач згоден на це;
аплет може поліпшити використання: після першого запуску аплету, коли JVM вже виконується і швидко запускається, переважно у постійних користувачів Java, проте JVM доведеться перезапускати кожен раз, коли запускається новий браузер.
він може запуститися з порівнянною (але зазвичай повільніше) швидкістю на інших компільованих мовах, таких як C ++, але у багато разів швидше, ніж JavaScript
він може перенести роботу з сервера до клієнта, роблячи Інтернет-рішення с, великим числом користувачів/кліентов.апплет володіє наступними недоліками:
він вимагає встановлення Java-розширення (plug-in), яке не у всіх браузерах доступно за замовчуванням;
він не може запуститися до тих пір, поки не запуститься віртуальна Java-машина, і це може зайняти значний час при першому запуску;
створення і дизайн хорошого користувальницького інтерфейсу з використанням аплетів вважається більш складним завданням, ніж за допомогою технології, заснованої на HTML;
деякі організації допускають тільки програмне забезпечення, встановлене адміністраторами. У результаті багато користувачів не можуть бачити аплети за замовчуванням.
аплети можуть зажадати використання певного JRE.
Однак, доступні вільно поширювані реалізації, такі як GCJ-plugin, Blackdown Java-plugin.
Запитання сумісності
Компанія Sun зробила значні зусилля для забезпечення сумісності між Java-версіями по мірі їх появи. Наприклад, Microsoft Internet Explorer, найпопулярніший браузер з кінця 1990х, мав звичай завантажувати власну JVM для Microsoft за замовчуванням. MS JVM має ряд додаткових функцій, що не входять в Java, які, будучи використані, будуть перешкоджати виконанню MS JVM-апплетам в середовищі Sun s Java (але не навпаки). Sun пред'явила Microsoft позов за порушення прав на товарний знак, так як суть Java полягає в тому, що не повинно бути ніякого власного розширення і що код повинен працювати скрізь. Розвиток MS JVM було заморожено до правового врегулювання, залишивши багатьох користувачів з надзвичайно застарілими віртуальними Java-машинами. Пізніше, в жовтні 2001 року, MS зупинив включення Java в Windows, і протягом ряду років було залишено на розсуд виробників комп'ютерів встановлювати Java чи ні, незалежно від операційної системи. Більшість нових машин зараз поставляється з офіційною Sun Java. Деякі браузери (зокрема, Netscape) не дуже добре забезпечують 100% -у сумісність, що ускладнює виконання аплету більшістю браузерів (JavaScript може насилу використовуватися для цієї мети). Оскільки аплет створює своє власне головне вікно, це не є хорошим рішенням, так як це залишає вікно браузера в значній мірі марним і призводить до того, що збільшується шанс ненавмисного закриття аплету користувачем шляхом закриття вихідного вікна браузера.
Альтернативи
Існують альтернативні технології (наприклад, DHTML, Microsoft Silverlight і Adobe Flash), які реалізують деякі можливості аплетів. Ще однією альтернативою аплетів для клієнта Java є Java Web Start, який запускається поза браузером. На додаток до функцій, доступним в апплете, простий доступ до полів надає програмам Java Web Start доступ по читанню і-або запису певних файлів, що зберігаються у клієнта, а також до буфе...