c /c++ ,java 之间有什么区别?

如题所述

区别太多。先列几条吧。
1. c是面向过程的语言。c++和Java都是面向对象的。在c中没有类或者对象的概念。
2. java运行在虚拟机上,号称与平台无关。也就是你开发的java程序无论是unix,linux还是windows都可以正常运行。但是实际上这是一个良好的愿望,实际跨平台时还会有各种各样的问题。c和c++都是直接编译成可执行文件,是否能跨平台主要看你用到的编译器特性是否有多平台支持。
3. 因为c和c++是直接编译成可执行文件,所以运行效率要比java高。至于c和c++哪个更快,两种语言的拥趸已经吵了很多年。
4. java因为是运行在虚拟机上,不需要考虑内存管理和垃圾回收机制。也是就你可以声明一个对象而不用考虑释放他,虚拟机帮你做这事情。而c和c++语言本身没有多少内存管理的概念,写c和c++程序如果用到指针就一定要考虑内存申请和释放。内存泄漏是c和c++最头疼的问题。
5. 代码重用:java中有一个根类object,所有的类都是其子类,通过这种方式将容器和算法分离,实现一种操作作用于多种对象,提高代码重用。c++中没有总根对象,但是c++提供了另一个更强大的功能“模板”,同样高效地实现了一种操作作用于多种对象,提供了高效的代码重用方法。
6. 数据结构:java内建了丰富的数据结构:列表,集合等等(很久没用java了,有些记不太清)。而c++则用“模板”同样提供了各种数据结构(容器)。
7. c语言在一些比较低层,和硬件打交道的地方用得比较多。另外很多开源软件由于unix/linux开发习惯也大多采用c来开发。Java是现在最流行的开发语言,c++比起java稍稍不那么流行一些,但是功能很强大。如能深入掌握,可以写出兼顾效率和美观的优秀代码。
温馨提示:内容为网友见解,仅供参考
第1个回答  2015-10-17
1:运行平台不同
c/c++能用vc开发,因此能做成windows的应用程序和游戏之类,java则是运行在java虚拟机之上,主要用于嵌入式,安卓以及大型网站搭建之类,注,安卓低层也有c++库,但普通安卓应用主要还是用java吧
2:学习难度
java别称c++-,比c++少了指针,因此学习难度明显比c++简单
3:代码风格
java代码的优美程度远高于c++,很多人把c++代码风格批得很一文不是
4:使用人群
开发c++和开发java的人都很多
第2个回答  2010-02-16
java 是一个可跨平台的开发工具!其实代码和C/C++差不多,从对电脑的要求来说~C/C++适合Windows开发平台~不适合LinX,而Java则可以两者之间用
第3个回答  2010-02-16
每种语言的区别真的很多,估计很难一下说清。

c/c++ 出现的时间应该比 java 早几年。

很多工作(不是所有)用c/c++或java都同样能完成。

你应该搞清楚他们的优点和缺点在哪里。

写与系统底层相关的程序,肯定用c/c++
第4个回答  2015-12-03
  c是面向过程的开发语言,而c++和,java是面向对象的语言
  C语言是一门通用计算机编程语言,应用广泛。C语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。
  C++是在C语言的基础上开发的一种面向对象编程语言,应用广泛。C++支持多种编程范式 面向对象编程、泛型编程和过程化编程。最新正式标准C++于2014年8月18日公布。其编程领域众广,常用于系统开发,引擎开发等应用领域,是至今为止最受广大程序员受用的最强大编程语言之一,支持类:类、封装、重载等特性!
  Java是一种可以撰写跨平台应用程序的面向对象的程序设计语言。Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于PC、数据中心、游戏控制台、科学超级计算机、移动电话和互联网,同时拥有全球最大的开发者专业社群。
相似回答