For investors
股价:
5.36 美元 %For investors
股价:
5.36 美元 %认真做教育 专心促就业
Java 和 C++ 都是面向对象语言。也就是说,它们都能够实现面向对象思想(封装,继乘,多态)。而由于 C++ 为了照顾大量的 C 语言使用者,而兼容了 C ,使得自身仅仅成为了带类的 C 语言,多多少少影响了其面向对象的彻底性!Java 则是完全的面向对象语言,它句法更清晰,规模更小,更易学。它是在对多种程序设计语言进行了深入细致研究的基础上,据弃了其他语言的不足之处,从根本上解决了 C++ 的固有缺陷。
Java 和 C++ 有很多的相似之处,但是几处不同使得Java更容易学习,并且编程环境更为简单。以下是几处比较明显的区别:
Java 语言让编程者无法找到指针来直接访问内存无指针,并且增添了自动的内存管理功能,从而有效地防止了 C/C++ 语言中指针操作失误,如野指针所造成的系统崩溃。但这也不是说 Java 没有指针,其虚拟机内部还是使用了指针,只是外人不得使用而,这样也有利于 Java 程序的安全。
Java 不支持操作符重载。操作符重载被认为是 C++ 的突出特征,在Java 中虽然类大体上可以实现这样的功能,但操作符重载的方便性仍然丢失了不少。Java 语言不支持操作符重载是为了保持 Java 语言尽可能简单。
Java 是完全面向对象的语言,所有函数和变量部必须是类的一部分。除了基本数据类型之外,其余的都作为类对象,包括数组。对象将数据和方法结合起来,把它们封装在类中,这样每个对象都可实现自己的特点和行为。而 C++ 允许将函数和变量定义为全局的。此外,Java 中取消了 C/C++ 中的结构和联合,消除了不必要的麻烦。
Java 不支持预处理功能。C/C++ 在编译过程中都有一个预编泽阶段,即众所周知的预处理器。预处理器为开发人员提供了方便,但增加了编译的复杂性。Java 虚拟机没有预处理器,但它提供的引入语句 (import) 与 C++ 预处理器的功能类似。
Java 没有函数,作为一个比 C++ 更纯的面向对象的语言,Java 强迫开发人员把所有例行程序包括在类中,而就事实来说,用方法实现例行程序可激励开发人员更好地组织编码。