**Applet**或**Java小应用程序**是一种在Web环境下，运行于客户端的Java程序组件。它也是1990年代中期，Java在诞生后得以一炮走红的功臣之一。通常，每个Applet的功能都比较单一（例如仅用于显示一个舞动的Logo），因此它被称作"小应用程序"1。JDK 9以後不再支援。

Applet必须运行于某个特定的"容器"，这个容器可以是浏览器本身，也可以是通过各种插件，或者包括支持Applet的移动设备在内的其他各种程序来运行。与一般的Java应用程序不同，Applet不是通过main方法来运行的（参见Java的Hello World程序和Java Applet的Hello World程序）。在运行时Applet通常会与用户进行互动，显示动态的画面，并且还会遵循严格的安全检查，阻止潜在的不安全因素（例如根据安全策略，限制Applet对客户端文件系统的访问）。

2016年，甲骨文公司宣布Applet只保留至JDK 8，JDK 9以後的版本不再支援，因為2013年開始主流的瀏覽器考量安全穩定因素，漸漸不支援外掛程式如Applet。大部分瀏覽器2021年已完全不支援外掛程式。

應用範例
----

* 以AWT方式撰寫一個顯示「Hello, world!」的Java applet。

```
import java.applet.Applet;
import java.awt.\*;

// Applet code for the "Hello, world!" example.
// This should be saved in a file named as "HelloWorld.java".
public class HelloWorld extends Applet {
 // This method is mandatory, but can be empty (i.e. have no actual code).
 public void init() { }

 // This method is mandatory, but can be empty.(i.e.have no actual code).
 public void stop() { }

 // Print a message on the screen (x=20, y=10).
 public void paint(Graphics g) {
 g.drawString("Hello, world!", 20,10);
 
 // Draws a circle on the screen (x=40, y=30).
 g.drawArc(40,30,20,20,0,360);
 }
}

```

* 上述Java的Code編譯成HelloWorld.class，再透過下述網頁使用。

```
<!DOCTYPE HTML PUBLIC 
  "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> 
<HTML>
<HEAD>
<TITLE>HelloWorld_example.html</TITLE>
</HEAD>
<BODY>
<H1>A Java applet example</H1>
<P>Here it is: <APPLET code="HelloWorld.class" WIDTH="200" HEIGHT="40">
This is where HelloWorld.class runs.</APPLET></P>
</BODY>
</HTML>
```

参见
--

* ActiveX
* Curl
* Java
* Java Servlet
* Java Web Start
* JavaFX
* 丰富互联网应用程序
* WebGL

参考文献
----

1. ↑ .  [2022-12-20]. （原始内容存档于2022-12-20）.
2. ↑ .  [2022-12-20]. （原始内容存档于2022-12-20）.
3. ↑ .  [2022-12-20]. （原始内容存档于2020-11-29）.
4. ↑ .  [2022-12-20]. （原始内容存档于2023-01-18）.

|  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |
| 

| * 
* 论
* 编
Java |
| --- |
|  |
| Java平臺 | 
* Java
	+ Java版本歷史
	+ Java 5.0
* JVM
	+ Java字节码
* Java ME
* Java SE
* Java EE
* Java Card
* Android SDK

 |  |
|  |
| Oracle技术 | 
* Squawk（英语：）
* JDK
* OpenJDK
* Java虚拟机
* JavaFX
* Maxine VM（英语：）

 |
|  |
| 平台技术 | 
* Java集合框架
* Servlets
* MIDlet（英语：）
* JSP
* Web Start (JNLP)（英语：）
* applet

 |
|  |
| 主要的第三方技术 | 
* Blackdown（英语：）
* Eclipse
* GNU Classpath
* GWT
* Harmony
* Hibernate
* IcedTea（英语：）
* Jazelle（英语：）
* Spring
* Struts
* TopLink
* WildFly

 |
|  |
| 历史 | 
* Java版本歷史
* JCP
* 昇陽電腦
* 自由的Java实现

 |
|  |
| 主要JVM语言（英语：） | 
* BeanShell（英语：）
* Clojure
* Groovy
* Oxygene（英语：）
* JRuby
* Jython
* Kotlin
* Processing
* Rhino
* Scala
* Tcl/Java（英语：）

 |
|  |
| 会议（英语：） | 
* JavaOne
* Devoxx（英语：）

 |

 |

|  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |
| 

| * 
* 论
* 编
網頁技術與標準 |
| --- |
|  |
| 文档呈现语言 | 
* HTML\*（HTML5\*）
* XHTML\*
* XML\*
* XForms\*
* DHTML

 |
|  |
| 样式格式描述语言 | 
* CSS\*
* XSL\*

 |
|  |
| 动态网页技术 | 
* CGI
* FastCGI
* ASP
* ASP.NET
* ColdFusion
* JSP
* Perl（PSGI）
* Python（WSGI）
* Ruby
* Smalltalk
* PHP

 |
|  |
| 用戶端互動技术 | 
* ActiveX
* Java Applet
* JavaFX
* AJAX（XMLHTTP\*）
* WebSocket\*
* Silverlight
* ActionScript（Flash
* Flex
* AIR）
* Asm.js
* NaCl
* WebAssembly\*

 |
|  |
| 用戶端手稿語言 | 
* ECMAScript（JavaScript，JScript）
* VBScript

 |
|  |
| 标识定位语言 | 
* URL
* URI
* XPath
* URL重寫

 |
|  |
| 文档纲要语言 | 
* DTD\*
* XML Schema\*

 |
|  |
| \* 代表由W3C制定和维护的标准与规范 |

 |