Java和C++的区别分析.ppt

  1. 1、本文档共12页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Java和C的区别分析

Java和C++都是面向对象语言。也就是说,它们都能实现面向对象思想(封装、继承、多态)。而由于C++为了照顾大量C语言使用者,而兼容了C,使得自身成为带类的C语言,多多少少影响了其面向对象的彻底性!Java则是完全的面向对象语言,它句法更清晰,规模更小,更易学。它是在对多种程序设计语言进行了深入细致研究的基础上,摈弃了其他语言的不足之处,从根本上解决了C++的固有不足。 Java和C++的相似之处多于不同之处,但Java语言更容易学习,而且编程环境更为简单。 指针 C++:指针是重要的数据结构,父类和子类的对象之间很多时候是依靠指针联系的。但容易操作失误而造成系统崩溃。 Java:取消了指针操作,只是虚拟机内部使用指针,程序员不得使用。保证了安全性。 多重继承 C++:支持多重继承,允许多个父类派生一个子类。缺点是使用起来很复杂。 Java:不支持多重继承,但是允许一个类继承多个接口,从而实现了C++多重继承的功能,又避免了C++中的多重继承实现方式带来的诸多不便。 操作符重载 C++:支持操作符重载,使用复杂。 Java:不支持操作符重载,使用简单。 数据类型和类 C++:允许将函数和变量定义为全局的。 Java:所有函数和变量部必须是类的一部分。除了基本数据类型之外,其余的都作为类对象,包括数组。对象将数据和方法结合起来,把它们封装在类中,这样每个对象都可实现自己的特点和行为。此外,Java中取消了c/c++中的结构和联合,消除了不必要的麻烦。 字符串 C++:不支持字符串变量,在c和c十十程序中使用Null终止符代表字符串的结束. Java:字符串是用类对象(strinR和stringBuffer)来实现的,这些类对象是Java语言的核心. 自动内存管理 C++:必须由程序员释放内存资源,增加了程序设计者的负担。 Java:无需程序员回收内存,无用内存回收程序是以线程方式在后台运行的,利用空闲时间工作。 预处理功能 C++:在编译过程中都有一个预编译阶段,使用#include语句,即众所周知的预处理器,增加了编译的复杂性。 Java:没有预处理器,但提供了import语句提供类似的功能。 goto和const C++:存在goto和const。 Java:不存在 使用try-catch-finally代替goto 使用final代替const 类型转换 C++:支持自动强制类型转换。例如,在c十十中可将一浮点值赋予整型变量,并去掉其尾数。 Java:不支持c十十中的自动强制类型转换,如果需要,必须由程序显式进行强制类型转换。 数据类型长度 C++:对于不同的平台,同一个数据类型分配不同的字节数,同样是int类型,在PC机中为二字节即16位,而在VAX-11中,则为32位.这使得C语言造成不可移植性。 Java:对每种数据类型都分配固定长度.比如,在Java中,int类型总是32位的。即无sizeof运算符。 信息科学与工程学院 软件工程系 Java程序设计 信息科学与工程学院 软件工程系 Java程序设计 Java和C++区别 信息科学与工程学院 软件工程系 Java程序设计 信息科学与工程学院 软件工程系 Java程序设计

文档评论(0)

wbjsn + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档