java好象随处可见-甚至在tv中。尽管如此,说清楚java是什么和它能做什么却不那么容易。刚开始接触java的人通常有三个问题:什么是java?java能做什么?java怎样改变我的生活?让我们先回答第一个问题:什么是java?java既是一种编程语言,又是一个平台。java程序语言java是具有以下特征的高级程序语言:简单面向对象可分布可解释强壮安全性结构化轻便功能强大多线程动态java既可以被编译,也可以被解释。通过编译器,可以把java程序翻译成一种中间代码-称为字节码-可以被java解释器解释的独立于平台的代码。通过解释器,每条java字节指令被分析,然后在计算机上运行。只需编译一次,程序运行时解释执行。下图说明了它是如何JAVA工作的:可以把java字节码看作运行在java虚拟机(javavm)上的机器代码指令。每中java解释器,不管是java开发工具还是可以运行java小应用程序的web浏览器,都是一种javavm的实例。javavm也可以由硬件实现。java字节码使“写一次,到处运行”成为可能。可以在任何有java编译器的平台上把java程序编译成字节码。这个字节码可以运行在任何javavm上。例如,同一个java程序可以运行在windowsnt、solaris和macintosh上。java平台平台是程序运行的硬件或软件环境。java平台与大多数其它平台不同之处在于它是运行于其它基于硬件平台的纯软件平台。大多数其它平台是硬件和操作系统的结合。java平台由两部分组成:java虚拟机(javavm)java应用程序界面(javaapi)我们已经介绍了javavm,它是java平台的基础,可以移植到各种基于硬件的平台上。javaapi是软件组件的集合,它们提供了很多有用的功能,如图形用户界面(gui)。javaapi被分组为相关组件的库(包)。下图描述了一个运行在java平台上的java程序,如应用程序(application)或小应用程序(applet)。如图中显示的,javaapi和vm把java程序从硬件依赖中分离出来。作为一种独立于平台的环境,java比本地代码慢一些。然而,聪明的编译器、很好地调制过的解释器和即时字节码编译器可以在不牺牲可移植性的条件下使java的表现接近本地代码。 |