java之父James Gosling团队在开发”Green”项目时,发现C缺少垃圾回收系统,还有可移植的安
全性、分布程序设计和多线程功能。最后,他们想要一种易于移植到各种设备上的平台。
Java确实是从C语言和C++语言继承了许多成份,甚至可以将Java看
成是类C语言发展和衍生的产物。比如Java语言的变量声明,操作符
形式,参数传递,流程控制等方面和C语言、C++语言完全相同。但同
时,Java是一个纯粹的面向对象的程序设计语言,它继承了C++语言
面向对象技术的核心。Java舍弃了C语言中容易引起错误的指针(以
引用取代)、运算符重载(operator overloading)、多重继承
(以接口取代)等特性,增加了垃圾回收器功能用于回收不再被引用
的对象所占据的内存空间。JDK1.5又引入了泛型编程(Generic
Programming)、类型安全的枚举、不定长参数和自动装/拆箱。