目前Java主要应用于中间件的开发(middleware)---处理客户机与服务器之间的通信技术,早期的实践证明,Java不适合pc应用程序的开发,其发展逐渐变成在开发手持设备,互联网信息站,及车载计算机的开发。Java与其他语言所不同的是程序运行时提供了平台的独立性,称许可以在windows,solaris,linux其他操作系统上使用完全相同的代码。Java的语法与C++语法类似,C++/C程序员很容易掌握,而且Java是完全的彻底的面向对象的,其中提出了很好的GC(GarbageCollector)垃圾处理机制,防止内存溢出。
简单、高效
Java 语言与 C++ 类似,如果用户了解 C++ 和面向对象的概念,就可以很快编写出 Java 程序;此外,Java又不同于诸如 C++ 语言提供的各种各样的方法,它只提供了基本的方法,这样就减少了编程的复杂性,例如去掉了头文件、指针变量、结构、运算符重载、多重继承等复杂特性。Java语言虽然简单,却很高效,它可以用面向对象的方法来描述用户的每一个动作。
面向对象
Java 语言是一种新的面向对象的程序设计语言,它除了几种基本的数据类型外,大都是类似 C++ 中的对象和方法,程序代码大多体现了类机制,以类的形式组织,由类来定义对象的各种行为。Java同样支持类继承,这样也减少了程序设计的复杂性。
平台无关性
所谓一处编译处处运行。Java 语言经编译后生成与计算机硬件结构无关的字节代码( Bytecode ),这些字节代码被定义为不依赖任何硬件平台和操作系统。当Java 程序在运行时,需要由一个解释程序对生成的字节代码解释执行。这体现了Java语言的与平台无关性,使得 Java 程序可以在任何平台上运行,如 MS-DOS , Windows,Unix 等,因此具有很强的移植性。
交互式特性
Java 是面向对象的网络编程语言,由于它支持 TCP/IP 协议,使得用户可以通过浏览器访问到 Internet 上的各种动态对象。并且在网络上用户可以交互式地进行各种动作,而多线程技术的引入使得这种交互式操作更为容易。
多线程机制
Java 语言支持多线程机制,多线程机制使得 Java 程序能够并行处理多项任务。Java 程序可以设计成具有多个线程,例如让一个线程负责数据的检索、查寻,另一个线程与用户进行交互,这样,两个线程得以并行执行。多线程机制可以很容易地实现网络上的交互式操作。
Java 的效率
早期 Sun 发现 JVM 的用户注意到了 Java 运行很慢,但是新的 Java 虚拟机显著加快。新的虚拟机使用了一种称为实时编译的技术,他把字节码编译并储存成本机的机器码。当执行字节码时,重调本地码。
Java 虚拟机是一个可以执行 Java 字节码的虚拟机进程。Java 源文件被编译成能被 Java 虚拟机执行的字节码文件。
Java 被设计成允许应用程序可以运行在任意的平台,而不需要程序员为每一个平台单独重写或者是重新编译。Java虚拟机让这个变为可能,因为它知道底层硬件平台的指令长度和其他特性。