JAVA是跨平台的
Java程序的跨平台主要是指字节码文件可以在任何具有Java虚拟机的计算机或者电子设备上运行,Java虚拟机中的Java解释器负责将字节码文件解释成为特定的机器码进行运行。
JAVA是简单的
不再有#include 和#define 等预处理功能,
不再有指针、不再有多重继承,
不再有goto,
不再有操作符重载(Operatior Overloading),
不再有全局变量,
不再有手动内存管理
JAVA是安全的
Java取消了强大但又危险的指针。由于指针能够进行移动运算,指针可随便指向一个内存区域,而不管这个区域是否可用,这样做是危险的,因为原来这个内存地址可能存储着重要数据或者是其他程序运行所占用的内存, 并且使用指针也容易数组越界。Java提供了自动内存管理机制,由垃圾回收器在后台自动回收。
Java在字节码的传输过程中使用了公开密钥加密机制(PKC)。而在运行环境提供了四级安全性保障机制:节码校验器 - 类装载器 - 运行时内存布局 - 文件访问限制。
JAVA是完全面向对象的
Java和C++都是面向对象语言。
也就是说,它们都能够实现面向对象思想(封装,继承,多态)。由于C++为了照顾大量C语言使用者而兼容了C,使得自身仅仅成为了带类的C语言,多少影响了其面向对象的彻底性!Java则是完全的面向对象语言,它句法更清晰,规模更小,更易学。它是在对多种程序设计语言进行了深入细致研究的基础上,据弃了其他语言的不足之处,从根本上解决了C++的固有缺陷。
JAVA是健壮的
Java是一种健壮的语言,吸收了C/C++ 语言的优点,但去掉了其影响程序健壮性的部分(如:指针、内存的申请与释放等)