请问java和c++的具体区别。。。。

如题,请问下java和c++具体有什么不一样的地方?

1、Java源码会先经过一次编译,成为中间码,中间码再被解释器解释成机器码。对于Java而言,中间码就是字节码(.class),而解释器在JVM中内置了。
2、C++源码一次编译,直接在编译的过程中链接了,形成了机器码。
3、C++比Java执行速度快,但是Java可以利用JVM跨平台。
4、Java是纯面向对象的语言,所有代码(包括函数、变量)都必须在类中定义。而C++中还有面向过程的东西,比如是全局变量和全局函数。
5、C++中有指针,Java中没有,但是有引用。
6、C++支持多继承,Java中类都是单继承的。但是继承都有传递性,同时Java中的接口是多继承,类对接口的实现也是多实现。
7、C++中,开发需要自己去管理内存,但是Java中JVM有自己的GC机制,虽然有自己的GC机制,但是也会出现OOM和内存泄漏的问题。C++中有析构函数,Java中Object的finalize方法。
8、C++运算符可以重载,但是Java中不可以。同时C++中支持强制自动转型,Java中不行,会出现ClassCastException(类型不匹配)。

基本上就是以上内容,回答中有什么遗漏欢迎网友们补充,希望对您有所帮助。
温馨提示:内容为网友见解,仅供参考
第1个回答  2008-10-17
Java语言的语法与C语言和C++语言很接近,使得大多数程序员很容易学习和使用Java。另一方面,Java丢弃了C++ 中很少使用的、很难理解的、令人迷惑的那些特性,如操作符重载、多继承、自动的强制类型转换。特别地,Java语言不使用指针,并提供了自动的废料收集,使得程序员不必为内存管理而担忧。Java语言提供类、接口和继承等原语,为了简单起见,只支持类之间的单继承,但支持接口之间的多继承,并支持类与接口之间的实现机制(关键字为implements)。Java语言全面支持动态绑定,而C++ 语言只对虚函数使用动态绑定。总之,Java语言是一个纯的面向对象程序设计语言。
第2个回答  2008-10-17
1.Java一般被认为比C++慢点,(个人不同意)
2.Java更加面向对象,封装更彻底
3.Java不相信程序员的能力(为程序员设计好了很多功能,你调用即可),而C++坚信程序员的能力(相信程序员有更好的算法实现同样的功能)。
4.Java有广大的开源社区,大量的扩展包
第3个回答  推荐于2016-05-30
Java和C/C++的详细区别。
http://hi.baidu.com/lingchenxin/blog/item/e3b8387b1fd7a4f50bd1876b.html

简单来说,java是C++的升级版,抛弃了C++的缺点,扬长了很多C++的优点。。
所以学起来java肯定比c++简单易学本回答被提问者采纳
第4个回答  2008-10-17
java是基于C++开发的,两者都是OOPL.但是java对对象的封装要好一点
屏蔽了C中的指针,不允许多继承(在java中必须用接口实现多继承).用户不能操作内存.这些是和C++不同的地方.

c++和java有什么区别吗?
1、设计思路不同:C语言是面向过程的语言,执行效率高;Java是面向对象的语言,执行效率比C语言低;2、通用性不同:C语言不能跨平台;java可以跨平台直接移植,只要有安装Java虚拟机(JVM)就可以了;3、语法不同:(1)、基本数据类型不同:c语言是int short long char float double 还有一些特殊类型...

c++和java的区别和就业前景
1、应用层不同 JAVA的应用在高层,C++在中间件和底层。2、业务需求不同 JAVA离不开业务逻辑,而C++可以离开业务为JAVA们服务。3、可移植性不同 java语言给开发人员提供了更为简洁的语法;取消了指针带来更高的代码质量;完全面向对象,独特的运行机制是其具有天然的可移植性。 java 是运行在JVM上的,...

c++语言与java语言的区别有哪些?
Java与C++之间的区别主要体现在语言特性、设计哲学、开发效率、安全性和跨平台性等方面。以下是一些关键区别:Java作为一门面向对象的编程语言,具有以下特点:1. 简洁易学:Java语言相对于C++来说,语法更为简洁,易于学习。它简化了许多复杂的特性,如头文件、指针、结构体、运算符重载等,使得程序更加严...

加瓦语言和c++的区别
加瓦语言(Java)和C++是两种不同的编程语言,它们有以下几个主要区别:1. 语法和语言特性:Java是一种面向对象的编程语言,而C++既支持面向对象编程,也支持面向过程编程。两者的语法和语言特性有所不同,包括类型系统、操作符、控制结构等等。2. 平台兼容性:Java语言是一种平台无关的语言,它可以在不...

C++和JAVA得区别?
一、主体不同 1、C++:是C语言的继承,它既可以进行C语言的过程化程序设计,又可以进行以抽象数据类型为特点的基于对象的程序设计。2、JAVA:是一门面向对象编程语言,不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承、指针等概念。二、特点不同 1、C++:不仅拥有计算机高效运行的实用性...

java与c++语法上有什么区别?
Java和c++总体来说都支持面向对象编程,但由于创始人不同,语法确实有一些差别,下面我来列举一些:1.引入头文件的方式不同 在C++中,使用“#include <filename>”来引入头文件,而Java使用“import”关键字来引入其他类或者库(这里我们也可称为导包)。2.指针的使用 在c++中,支持指针的使用,而...

Java和C++,综合来讲哪个更好
说到Java和C++,Java并不仅仅是C++语言的一个变种,我们先来说一说它们的区别:(1)Java比C++程序可靠性更高。有人曾估计每50行C++程序中至少有一个BUG.姑且不去讨论这个数字是否夸张,但是任何一个C++程序员都不得不承认C++语言在提供强大的功能的同时也提高了程序含BUG的可能性。Java语言通过改变...

javascript,JAVA和c++有什么区别联系?
JAVA和C++都是编程语言!相同点:都是基于面向对象语言,语法结构大同小异 不同点:C++是第一种让人们认识到面向对象的设计方法的强大的语言。既然是第一种,它就必然还残留着很浓面向过程设计思路的影子(不可能有一种语言只面向过程,任何程序都是至少过程化的,做事总得有个过程吧。即使过程被对像...

C++与Java的区别是什么?各有什么优劣?
1.C++ 和java相比,只有标准的容器和算法,它的标准里没有网络,GUI以及应用框架这些内容,因此需要第三方的库来支持。而java的标准库包含的内容很丰富,有GUI支持,网络支持,多线程支持,以及完整的应用框架。从 功能上讲:MFC + C++=java (windows)或:Qt + C++=java(linux)2.C++中有指针可以...

java和C++的区别总结
①C++和Java在实例域上的区别   C++是不能直接初始化类的实例域(数据域),所有的域必须要直接通过拷贝构造函数进行,但是java是允许直接初始化实例域的,这是因为java中没有子对象,只有指向其他成员的指针。但是C++中有两种数据域是必须要进行直接初始化的,那就是引用和const常量。②...

相似回答