# JavaScript 与Java、Java applet

**URL:** <https://www.isharkfly.com/t/javascript-java-java-applet/8364>\
**Category:** 前端\
**Created:** [October 20, 2012, 3:31pm UTC](https://www.isharkfly.com/t/javascript-java-java-applet/8364 "2012-10-20T15:31:14Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![honeymoose](https://www.isharkfly.com/user_avatar/www.isharkfly.com/honeymoose/32/20796_2.png) [@honeymoose](https://www.isharkfly.com/u/honeymoose)\
**Post date:** [October 20, 2012, 3:31pm UTC](https://www.isharkfly.com/t/javascript-java-java-applet/8364/1 "2012-10-20T15:31:14Z")

</div>

JavaScript 和Java 虽然名字都带有Java，但它们是两种不同的语言，也可以说是两种互不相干的语言：前者是一种基于对象的脚本语言，可以嵌在网页代码里实现交互及控制功能，而后者是一种面向对象的编程语言，可用在桌面应用程序、Internet 服务器、中间件、嵌入式设备以及其他众多环境。

其主要区别如下：  
开发公司不同：JavaScript 是Netscape 公司的产品，其目的是为了扩展Netscape Navigator 功能，而开发的一种可以嵌入Web 页面中的基于对象和事件驱动的解释性语言；Java 是Sun 公司推出的新一代面向对象的程序设计语言，特别适合于 Internet 应用程序开发。

语言类型不同：JavaScript 是基于对象和事件驱动的脚本编程语言，本身提供了非常丰富的内部对象供设计人员使用；Java 是面向对象的编程语言，即使是开发简单  
的程序，也必须设计对象。

执行方式不同：JavaScript 是一种解释性编程语言，其源代码在发往客户端执行之前不需经过编译，而是将文本格式的字符代码发送给客户，由浏览器解释执行；Java  
的源代码在传递到客户端执行之前，必须经过编译，因而客户端上必须具有相应平台上的仿真器或解释器，它可以通过编译器或解释器实现独立于某个特定的平台编  
译代码的束缚。

代码格式不同：JavaScript 的代码是一种文本字符格式，可以直接嵌入HTML 文档中，并且可动态装载；Java 是一种与HTML 无关的格式，必须将其通过专门编译  
器编译为Java applet，其代码以字节代码的形式保存在独立的文档中，然后在HTML 中通过引用外部插件的方式进行装载，

变量类型不同：JavaScript 采用弱类型变量，即变量在使用前不需作特别声明，而是在浏览器解释运行时该代码时才检查其数据类型；Java 采用强类型变量，即所有  
变量在通过编译器编译之前必须作专门声明，否则报错。

嵌入方式不同：JavaScript 使用 标记对来标识其脚本代码并将其嵌入到HTML 文档中；Java 程序通过专门编译器编译后保存为单独的Java applet  
文件，并通过使用 … 标记对来标识该插件。

联编方式不同：JavaScript 采用动态联编，即其对象引用在浏览器解释运行时进行检查，如不经编译则就无法实现对象引用的检查；Java 采用静态联编，即Java 的  
对象引用必须在编译时进行，以使编译器能够实现强类型检查。

经过以上几个方面的比较，读者应该能清醒认识JavaScript 和Java 是没有任何联系的两门语言。

下面讨论Java applet。

Java applet 是用Java 语言编写的、有特定用途的应用程序，其直接嵌入到HTML 页面中，由支持Java 的浏览器解释执行并发挥其特定功能，大大提高Web 页面的交互和动态执行能力，包含applet 应用程序的页面被称为Java-powered 页。

当用户访问这样的网页时，如果客户端浏览器支持Java 且没有将Java 支持选项设置为禁止，则applet 被下载到用户的计算机上执行，且执行速度不受网络带宽的限制，用户可以更好地欣赏网页上applet 产生的各种效果。

与其他应用程序不同，applet 应用程序必须通过和标记对将自己内嵌到HTML 页面中，当支持Java 的客户端浏览器遇到该标记对时，立即下载该applet 并在本地计算机上执行。执行的过程中它可从目标页面中获得相应的参数，并产生相应的功能，与Web 页面进行交互，实现页面的动态效果。

在 HTML 页面中嵌入applet，至少需获得该applet 的以下信息：

字节码文件名：编译后的 Java 文件，以.class 为后缀；

字节码文件的地址：相对地址和绝对地址均可；

显示参数设定：一些需要设定的参数如 width、height 等。

嵌入 applet 应用程序使页面更加富有生气，增加页面的交互能力，改进页面的定态效果，同时，嵌入applet 应用程序并不影响HTML 页面中的其他元素。
