1.2 Java的特点

Java是一门优秀的编程语言。Java之所以能够流行起来,应用广泛,并且长盛不衰,是因为它有很多突出的特点,其中最主要的特点如下。

1.使用简单

Java的设计目标之一就是能够方便学习,使用简单。因为20世纪90年代使用C++的开发者很多,所以Java的设计风格与C++的设计风格类似,但是摒弃了C++中难以理解且容易引发程序错误的内容,如指针、内存管理、运算符重载和多重继承等。需要注意的是,Java不使用指针,使用的是引用,并且提供了自动的垃圾回收机制,因此,程序员不必为内存管理而担忧。

2.面向对象

面向对象是Java最重要的特性。在Java中可以理解为“一切都是对象”,面向对象的程序的核心是由类和对象组成的,通过类和对象描述实现事物之间的联系。这种方法符合人们的思维习惯,并且容易扩充和维护,因此提高了程序的可重用性。Java提供了类、接口和继承等原语,支持类之间的单重继承、接口之间的多重继承,以及类与接口之间的实现机制(采用关键字implements说明)。

3.分布式

Java是分布式语言。JDK(Java Development Kits,Java开发工具包)中包含基于TCP/IP协议的类库,可以轻松实现分布式应用系统,进行分布式计算。Java程序可以凭借URL打开并访问网络中的对象,其访问方式与访问本地文件系统几乎完全相同。

4.平台无关性和可移植性

Java采用解释与编译相结合的方式,Java源程序文件(.java)先被编译成与机器结构(CPU和操作系统)无关的字节码文件(*.class),再由Java虚拟机解释执行。任何种类的计算机,只要可以运行Java虚拟机,字节码文件就可以在该计算机上运行,从而实现程序运行效率和不同操作系统之间可移植性的完美结合。

5.健壮性

健壮性是指程序运行的稳定性。Java在编译和运行的过程中会进行比较严格的检查,以减少错误的发生。

Java不提供指针,从而杜绝开发者对指针的误操作,如内存分配错误、内存泄漏等造成系统崩溃的可能性。

在内存管理方面,C/C++等采用手动分配和释放,经常导致内存泄漏,进而导致系统崩溃。而Java采用自动的内存垃圾回收机制,程序员不需要管理内存,这样可以减少内存错误的发生,提高程序的健壮性。

6.安全性

Java的安全性体现在两个层面,即Java的底层运行机制和Java提供的安全类API。在底层运行机制方面:首先,Java没有提供指针机制,避免了指针机制可能带来的各类安全问题;其次,Java通过类型安全设计和自动的垃圾回收机制来提高程序代码的健壮性;最后,Java提供了安全的类加载和验证机制,确保只执行合法的Java代码。在API层面,Java提供了大量与安全有关的应用程序接口(Application Program Interface,API)、工具,以及常用安全算法、机制和协议的实现。因此,开发者可以专注于如何将安全性集成到应用程序中,而不是如何实现复杂的安全机制。

7.支持多线程

Java是原生支持多线程编程的。采用多线程机制可以并发处理多个任务,并且互不干涉,不会由于某一任务处于等待状态而影响其他任务的执行,这对于网络编程来说可以轻松实现网络中的实时交互操作,提高程序的执行效率。

8.动态

Java程序在运行过程中可以动态地加载各种类库,即使更新类库也不必重新编译使用这个类库的应用程序。这个特点使其非常适合在网络环境下运行,并且有利于软件的开发。当使用C/C++编译时,将函数库或类库中被使用的函数、类同时生成机器码;当类库升级之后,程序必须重新修改和编译才能使用新类库提供的功能。

9.异常处理

Java采用面向对象的异常处理机制,使正常代码和错误处理代码分开,这样程序的业务逻辑更加清晰明了,并且能够简化错误处理任务。