码 将被快速翻译成当前CPU的指令,在某种程度上相 当于将最终机器指令的产生放在动态加载器中进行。
10. 多线程 多线程就是让计算机同时运行多个程序段。编写一 个能同时处理多个任务的程序要比编写一个单线程 程序困难得多。 Java提供了一套复杂的线程同步化机制,程序员可 以方便地使用基于这种机制设计的方法,编写出健 壮的多线程程序。 11. 动态性 Java的动态性表现在它可以设计成能适应环境变化 的语言。Java属于运行加载,
Java的类库(即插即 用模块集)可以自由添加方法和属性而不会影响到 用户程序。因此,Java的动态性可以更好地适应不 断变化的执行环境。
12. 丰富的类库 Java代码清晰、结构合理、简明流畅,并提供丰富 的类库,使
程序员可以很方便地建立自己的系统。 13. 嵌入浏览器运行 Java的Applet小应用程序可嵌入浏览器运行,能够 完成动画、游戏、交互式事务处理等功能,使Web 页面具有动感,而不只是被动地展现文本和图形, 这提高了Web页面的智能性和灵活性。 Applet提供动态下载程序运行的技术基础,程序在 网络上传输而不受CPU和环境的限制。Applet嵌入 Web页面运行的能力使Java能够最大限度地利用网 络,为Java的发展创造了新机遇。
JSP更是一种将Java语言完全应用于Web应用程序 开发的技术和标准。 总之,Java是一种编程语言、一种开发环境、一种 应用环境、一种部署环境、一种广泛使用的网络编 程语言,它是一种新的计算概念。
1.1.3 Java的
用途
Java程序有两种类型: 一种是可在Web网页上运 行的Applet,称为小应用程序;另一种是 Application,即应用程序,可完成任何计算任务。 两种程序有不同的用途。
1. 用于Web的Applet Applet可以嵌入网页,实现HTML不具备的一些功 能。 通过在网页中添加嵌入式编程语言脚本(如CGI、 JavaScript等)也可以使Web页具有和用户交互的 能力,但这些嵌入式编程语言的能力有限,而且代 码是公开的,远不如Java的强大功能和安全保密性 能。Applet尽管是嵌入到
HTML中的小应用程序, 但Java语言的全部功能都可以实现,能解决一些传 统编程语言很难解决的问题,例如多线程、网络连 接、分布式计算等。
考虑到网络环境、连接速度等原因,Applet一般都 比较小,适合客户端下载。很多网站利用Java开发 出了商业网络平台,实现交互运行。还有大量的 Applet嵌入到网页,使页面变得更加活泼生动。 Applet不能单独运行,必须嵌入在HTML文件中, 由Web浏览器执行。 图1.1是Java SDK自带的一个
演示程序。
图 1.1
2. 独立运行的Application Applet运行时的窗口界面是由浏览器提供的,因为 它不能脱离浏览器而独立运行。而 Application则 和任何Windows应用程序一样可以自建窗口界面, 独立运行。 图1.2所示为一个图形方式的Java Application。
图 1.2
3. 数字设备领域 目前,Sun正在把Java的目标从传统的计算机应用 向其他数字设备领域扩展。Sun公司推出的基于 Java的JINI技术,能使各种小型数字设备以非常简 单的方式连接到任意“无准备”网络,使访问新网 络变得像接入电话机一样简单。 可以预见,在不远的将来,人们将会使用更多的 “Java设备” 。
4. Java应用的发展趋势 可以预见Java在智能Web服务、移动电子商务、分 布计算技术、企业的综合信息化处理、嵌入式Java 技术等方面必将得到越来越广泛的应用。
1.2 Java的运行环境
Java 产 品 面 向 的 主 流 平 台 有 Solaris、Windows、 Macintosh。由于Java的跨平台性,在任一平台中 编写的Java程序可以很好地移植到其他平台上。 为了运行Java程序,计算机上必须安装JVM(Java 虚拟机)和Java运行解释器,两者构成Java的基本 运行环境。 本书介绍基于Windows平台的Java程序以及Sun公 司的基于SDK的Java开发环境。