版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、文档从互联网中收集,已重新修正排版,word格式支持编辑,如有帮助欢迎下载支持。C, C , JAVA应用领域及优缺点分析C:优点1 .简洁紧凑、灵活方便C语言一共只有32个关键字,9种控制语句,程序书写形式自由,主要用 小写字母表示。它把高级语言的基本结构和语句与低级语言的实用性结合起 来。C语言可以像汇编语言一样对位、字节和地址进行操作,而这三者是计算 机最基本的工作单元。2 .运算符丰富C语言的运算符包含的范围很广泛,共有34种运算符。C语言把括号、 赋值、强制类型转换等都作为运算符处理。从而使C语言的运算类型极其丰 富,表达式类型多样化。灵活使用各种运算符可以实现在其它高级语言中难以
2、实现的运算。3 .数据结构丰富C语言的数据类型有:整型、实型、字符型、数组类型、指针类型、结构 体类型、共用体类型等。能用来实现各种复杂的数据结构的运算。并引入了指 针概念,使程序效率更高。另外C语言具有强大的图形功能,支持多种显示器 和驱动器。且计算功能、逻辑判断功能强大。4 . C是结构式语言结构式语言的显著特点是代码及数据的分隔化,即程序的各个部分除了 必要的信息交流外彼此独立。这种结构化方式可使程序层次清晰,便于使用、 维护以及调试。C语言是以函数形式提供给用户的,这些函数可方便的调用, 并具有多种循环、条件语句控制程序流向,从而使程序完全结构化。5 . C语法限制不太严格,程序设计自
3、由度大虽然C语言也是强类型语言,但它的语法比较灵活,允许程序编写者有 较大的自由度。6 . C语言允许直接访问物理地址,可以直接对硬件进行操作由于C语言允许直接访问物理地址,可以直接对硬件进行操作,因此它 既具有高级语言的功能,乂具有低级语言的许多功能,能够像汇编语言一样对文档从互联网中收集,已重新修正排版,word格式支持编辑,如有帮助欢迎下载支持。 位、字节和地址进行操作,而这三者是计算机最基本的工作单元,可用来写系 统软件。7 .生成目标代码质量高,程序执行效率高一般只比汇编程序生成的目标代码效率低10 ' 20%。8 . C语言适用范围大,可移植性好C语言有一个突出的优点就是适
4、合于多种操作系统,如DOS、UNIX;也适 用于多种机型。C语言具有强大的绘图能力,可移植性好,并具备很强的数据 处理能力,因此适于编写系统软件,三维,二维图形和动画,它也是数值计算 的高级语言。缺点1.C语言的缺点主要表现在数据的封装性上,这一点使得C 在数据的安全性上有很大缺陷,这也是C和C+的一大区别。2. C语言的语法限制不太严格,对变量的类型约束不严格,影响程序的安 全性,对数组下标越界不作检查等。从应用的角度,C语言比其他高级语言较 难掌握。C语言指针指针是C语言的一大特色,可以说是C语言优于其它高级语言的一个重 要原因。就是因为它有指针,可以直接进行靠近硬件的操作,但是C的指针操
5、 作也给它带来了很多不安全的因素。C+在这方面做了很好的改进,在保留了 指针操作的同时乂增强了安全性。Java取消了指针操作,提高了安全性,适 合初学者使用。C+:优点在以下领域,C+有着根本性的优势:低级系统程序设计、高级系统程序 设计、嵌入式程序设计、数值科学计算、通用程序设计以及混合系统设计等 等。让我们略微展开描述一下:低级系统程序设计:C+是迄今为止最好的低 级程序设计语言。高级系统程序设计:包括操作系统核心、网络管理系统、编译系统、电 子邮件系统、文字排版系统、图像和声音的编排系统、通讯系统、用户界面、 数据库系统等等。嵌入式系统:包括照相机、汽车、火箭、电话交换机、汽车等等。数值
6、/科学计算:包括仿真、实时数据获取和数据库访问等等。Bjarne的个人主页上,有一页applications,那儿列出了一些(全部或 大部分)使用C+编写的系统、应用程序和库。下面是一些例子:AdobeIword格式支持编辑,如有帮助欢迎下载支持。文档从互联网中收集,已重新修正排版,word格式支持编辑,如有帮助欢迎下载支持。Systems:所有主要应用程序都使用C+开发而成,比如 Photoshop&ImageReady> Illustrator 和 Acrobat 等。Maya:知道蜘蛛人、指环王的电脑特技是使用什么软件做出来的吗? 没错,就是Maya。Amazon, com
7、:使用C+开发大型电子商务软件。Apple:部分重要零件采用C+编写而成。AT&T:美国最大的电讯技术提供商,主要产品采用C+开发。Google: Web搜索引擎采用C+编写。IBM: 0S/400oMicrosoft:以下产品主要采用 C+(Visual C+)编写:Windows XPWindows NT: NT4、 2000Windows 9x: 95、 98、 MeMicrosoft Office: Word、Excel、Access、PowerPoint> Outlookinternet Explorer, 包括 Outlook ExpressVisual Studio
8、: Visual C+、 Visual Basic、 Visual FoxPro. NET Framework类库采用C#编写,但C#编译器自身则使用C+编写而 成。ExchangeSQL ServerFrontPageProject 所有游戏.KDE: K Desktop Environment(Linux)。Symbian OS:最流行的蜂窝电话OS之一。缺点没有垃圾回收机制,使用不方便。要熟练运用,需掌握的东西很 多。很难迅速上手。不像有些语言已经封装好各种功能,直接拿来用就可以 了。编译器实现过于复杂.尤其是要把预处理和语法分析混在一起的时候.继承 并超越了 C,理论上可以跨平台,但在
9、具体实现上,乂过分依赖平台。比较底 层,易用性不是很好。C+的多重继承和友元机制一直受到很多人的诟病,因 为破坏了封装性,但是因为C+不是pure oop,它的缺点是明显的,但有时候 它的缺点也是它的优点。JAVA:优点Java是一个广泛使用的网络编程语言,它是一种新的计算概念。首先,作为一种程序设计语言,它简单、面向对象、不依赖于机器的结 构、具有可移植性、鲁棒性、安全性、并且提供了并发的机制、具有很高的性 能。其次,它最大限度地利用了网络,Java的小应用程序(applet)可在网络上 传输而不受CPU和环境的限制。另外,Java还提供了丰富的类库,使程序设计 者可以很方便地建立自己的系统
10、。Java语言有下面一些特点:简单、面向对象、分布式、解释执行、鲁 棒、安全、体系结构中立、可移植、高性能、多线程以及动态性。1、简单性Java语言是一种面向对象的语言,它通过提供最基本的方法来完成指定的 任务,只需理解一些基本的概念,就可以用它编写出适合于各种情况的应用程 序。Java略去了运算符重载、多重继承等模糊的概念,并且通过实现自动垃圾 收集大大简化了程序设计者的内存管理工作。另外,Java也适合于在小型机上 运行,它的基本解释器及类的支持只有40KB左右,加上标准类库和线程的支持 也只有215KB左右。库和线程的支持也只有215KB左右。2、面向对象Java语言的设计集中于对象及其
11、接口,它提供了简单的类机制以及动态的 接口模型。对象中封装了它的状态变量以及相应的方法,实现了模块化和信息 隐藏;而类则提供了一类对象的原型,并且通过继承机制,子类可以使用父类所 提供的方法,实现了代码的复用。3、分布性Java是面向网络的语言。通过它提供的类库可以处理TCP/IP协议,用户 可以通过URL地址在网络上很方便地访问其它对象。4、鲁棒性Java在编译和运行程序时,都要对可能出现的问题进行检查,以消除错误 的产生。它提供自动垃圾收集来进行内存管理,防止程序员在管理内存时容易 产生的错误。通过集成的面向对象的例外处理机制,在编译时,Java提示出可 能出现但未被处理的例外,帮助程序员
12、正确地进行选择以防止系统的崩溃。另 外,Java在编译时还可捕获类型声明中的许多常见错误,防止动态运行时不匹 配问题的出现。5、安全性用于网络、分布环境下的Java必须要防止病毒的入侵。Java不支持指针, 一切对内存的访问都必须通过对象的实例变量来实现,这样就防止程序员使用 特洛伊木马等欺骗手段访问对象的私有成员,同时也避免了指针操作中容易产 生的错误。6、体系结构中立Java解释器生成与体系结构无关的字节码指令,只要安装了 Java运行时 系统,Java程序就可在任意的处理器上运行。这些字节码指令对应于Java虚 拟机中的表示,Java解释器得到字节码后,对它进行转换,使之能够在不同的平
13、台运行。7、可移植性与平台无关的特性使Java程序可以方便地被移植到网络上的不同机器。 同时,Java的类库中也实现了与不同平台的接口,使这些类库可以移植。另 外,Java编译器是由Java语言实现的,Java运行时系统由标准C实现,这使得 Java系统本身也具有可移植性。10、解释执行Java解释器直接对Java字节码进行解释执行。字节码本身携带了许多编 译时信息,使得连接过程更加简单。11、高性能和其它解释执行的语言如BASIC、TCL不同,Java字节码的设计使之能很 容易地直接转换成对应于特定CPU的机器码,从而得到较高的性能。12、多线程多线程机制使应用程序能够并行执行,而且同步机制
14、保证了对共享数据的 正确操作。通过使用多线程,程序设计者可以分别用不同的线程完成特定的行 为,而不需要采用全局的事件循环机制,这样就很容易地实现网络上的实时交互 行为。13、动态性Java的设计使它适合于一个不断发展的环境。在类库中可以自由地加入 新的方法和实例变量而不会影响用户程序的执行。并且Java通过接口来支持 多重继承,使之比严格的类继承具有更灵活的方式和扩展性。缺点第一:运行速度慢,众所周知,Java程序的运行依赖于Java虚拟机,所以相对于其他语言(汇编,C, C+)编写的程序慢,因为它 不是直接,执行机器码。第二:因为Java考虑到了跨平台性。所以他不能像语言(例如:汇编,0那样
15、更接近操作系统。(1)存在非对象的数据类型;(2)不能够用一种描述方法来表达各种类 (class); (3)无法继承2个以上的类的装配。虽然也有人认为编程语言应该是 个什么样子会因人而异,不应该算成缺点。不过,上述三点却能导致编程人员 使用混乱,降低源码的可读性及程式的可维护性。首先java功能强大的背后是其复杂性,就拿web来说,当今流行的框架 有很多,什么struts, spring, jQuery等等,而这无疑增加了 java的复杂 性。有人说,对于一个大型项目,如果用java来作,可能需要9个月,并且 可能需要翻阅10本以上的书,但如果用ruby来作,3个月,3本书就足够 了,而.net也不过3, 4本书足以,这就是区别。轮性能微软曾做过一个例 子,就是同一个项目用
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 烧碱盐水工诚信测试考核试卷含答案
- 工业气体液化工成果强化考核试卷含答案
- 腐蚀控制工操作水平测试考核试卷含答案
- 丁苯橡胶装置操作工冲突管理水平考核试卷含答案
- 低压成套设备装配配线工岗位工艺分析考核试卷含答案
- 模型制作工岗前事故预防考核试卷含答案
- 露天采矿单斗铲司机岗位评优竞赛考核试卷含答案
- 整模脱模工岗前实践理论考核试卷含答案
- 化工结晶工岗位安全责任制考核试卷含答案
- 电力电容器卷制工岗前安全文化考核试卷含答案
- 税收征收管理法 课件
- JJF 2256-2025体重秤校准规范
- 双百社工培训课件
- 本科专业申报汇报
- DB3717T 14-2023 芍药鲜切花促成栽培生产技术规程
- 创业园区入驻指南
- 个人简历模板(5套完整版)
- 江苏省苏州市2023-2024学年高一年级上册期中数学试题
- 2024年国航股份地面服务部招聘笔试参考题库附带答案详解
- 海信入职在线测评题库
- 集装箱七点检查表
评论
0/150
提交评论