面向对象的概念和常见的面向对象的语言资料课件

上传人:沈*** 文档编号:241846407 上传时间:2024-07-30 格式:PPT 页数:33 大小:125.50KB
返回 下载 相关 举报
面向对象的概念和常见的面向对象的语言资料课件_第1页
第1页 / 共33页
面向对象的概念和常见的面向对象的语言资料课件_第2页
第2页 / 共33页
面向对象的概念和常见的面向对象的语言资料课件_第3页
第3页 / 共33页
点击查看更多>>
资源描述
第一组组长:梁卫文组员:陈勇,周二凤,夏保利,石江文,丁铤铤面向对象的概念和常见的面向对象的语言例:C#或Java面向对象的定义:是一种对现实世界理解和抽象的方法,是计算机编程技术到一定阶段后的产物。面向对象(Object Oriented,OO)是当前计算机界关心的重点,它是90年代软件开发方法的主流。面向对象的概念和应用已超越了程序设计和软件开发,扩展到很宽的范围。如数据库系统、交互式界面、应用结构、应用平台、分布式系统、网络管理结构、CAD技术、人工智能等领域。演变:早期的计算机编程是基于面向过程的方法,例如实现算术运算1+1+2=4,通过设计一个算法就可以解决当时的问题。随着计算机技术的不断提高,计算机被用于解决越来越复杂的问题。作用:通过面向对象的方式,将现实世界的物抽象成对象,现实世界中的关系抽象成类、继承,帮助人们实现对现实世界的抽象与数字建模。通过面向对象的方法,更利于人理解的方式对于复杂系统的进行分析、设计与编程。同时,面向对象能有效提高编程的效率,通过封装技术,消息机制可以像搭积木的一样快速开发出一个全新的系统。流程:首先根据客户需求抽象出业务对象;然后对需求进行合理分层,构建相对独立的业务模块;之后设计业务逻辑,利用多态、继承、封装、抽象的编程思想,实现业务需求;最后通过整合各模块,达到高内聚、低耦合的效果,从而满足客户要求。面向对象的概念具体要求的确定,各自有各自的理解面向对象语言:(Object-Oriented Language)是一类以对象作为基本程序结构单位的程序设计语言,指用于描述的设计是以对象为核心,而对象是程序运行时刻的基本成分。语言中提供了类、继承等成分。面向对象语言借鉴了20世纪50年代的人工智能语言LISP,引入了动态绑定的概念和交互式开发环境的思想;始于20世纪60 年代的离散事件模拟语言SIMULA67,引入了类的要领和继承,成形于20世纪70年代的Smalltalk。发展方向:面向对象语言的发展有两个方向:一种是纯面向对象语言,如Smalltalk、EIFFEL等;另一种是混合型面向对象语言,即在过程式语言及其它语言中加入类、继承等成分,如C+、Objective-C等。主要特点:面向对象语言刻画客观系统较为自然,便于软件扩充与复用。有四个主要特点:(1)识认性,系统中的基本构件可识认为一组可识别的离散对象;(2)类别性,系统具有相同数据结构与行为的所有对象可组成一类;(3)多态性,对象具有惟一的静态类型和多个可能的动态类型;(4)继承性,在基本层次关系的不同类中共享数据和操作。其中,前三者为基础,继承是特色。四者(有时再加上动态绑定)结合使用,体现出面向对象语言的表达能力。常见的面向对象语言:Simula67,第一个面向对象语言,支持单继承和一定含义的多态和部分动态绑定;Smalltalk,第一个支持动态类型的语言,支持单继承、多态和动态绑定;EIFFEL,支持多继承、多态和动态绑定;C+,它的大部分基于类的特性继承自Simula,支持多继承、多态和部分动态绑定。VC+,C#,JAVA,delphi,PHP都是面向对象语言,即OOP,不过C+是面向对象和过程的,因为C+支持类和过程。java是面向对象的,只支持类的形式。C#也是面向对象的,只支持类的形式我们必须等待并观望我们必须等待并观望,就像已经由就像已经由SSI公司的公司的CEO和主席和主席Kalpathi S.Suresh指出来的那样指出来的那样,我发现所有这些都是我发现所有这些都是渐进的渐进的.如果如果C#C#不存在不存在,我们总能回到我们总能回到JavaJava或或C C和和C+.C+.这些这些都不完全是新技术都不完全是新技术;它们在更大的意义上来说只是大公司它们在更大的意义上来说只是大公司制造的市场噱头制造的市场噱头.我们必须给他们时间安顿下来看看这些我们必须给他们时间安顿下来看看这些是不是真的对是不是真的对ITIT工业有什么影响工业有什么影响.常见面向对象语言:C#语言C#(读做 C sharp,中文译音暂时没有.专业人士一般读C sharp,现在很多非专业一般读C井。C#是一种安全的、稳定的、简单的、优雅的,由C和C+衍生出来的面向对象的编程语言。它在继承C和C+强大功能的同时去掉了一些它们的复杂特性(例如没有宏和模版,不允许多重继承)。C#综合了VB简单的可视化操作和C+的高运行效率,以其强大的操作能力、优雅的语法风格、创新的语言特性和便捷的面向组件编程的支持成为.NET开发的首选语言。并且C#成为ECMA与ISO标准规范。C#看似基于C+写成,但又融入其它语言如Pascal、Java、VB等。微软c#语言定义主要是从C和C+继承而来的,而且语言中的许多元素也反映了这一点.C#在设计者从C+继承的可选选项方面比Java要广泛一些(比如说struts),它还增加了自己新的特点(比方说源代码版本定义).但它还太不成熟,不可能挤垮Java.C#还需要进化成一种开发者能够接受和采用的语言.而微软当前为它的这种新语言大造声势也是值得注意的.目前大家的反应是:这是对Java的反击.C#更像Java一些,虽然微软在这个问题上保持沉默默.这也是意料中的事情这也是意料中的事情,我觉得我觉得,因为因为Java近来很成近来很成功而使用功而使用Java的公司都报告说它们在生产效率上比的公司都报告说它们在生产效率上比C+获得了提高获得了提高.Java所带来的巨大影响和大家对所带来的巨大影响和大家对它的广泛接受已经由工作于这种语言和平台之上的它的广泛接受已经由工作于这种语言和平台之上的程序程序员数量明数量明显的的说明了明了(估计世界范围内共有两百估计世界范围内共有两百五十万五十万程序程序员使用使用Java).由这种语言写成的由这种语言写成的应用程序用程序的数量是令人惊的数量是令人惊讶的并已的并已经渗透了每一个渗透了每一个级别的的计算算,包括无线计算和移动电话包括无线计算和移动电话(比如比如日本日本发明的明的Java电电话话).C#能够在用户领域获得这样的礼遇吗能够在用户领域获得这样的礼遇吗?简介介1C#及其特点及其特点C#是是微微软公司公司在在2000年年6月发布的一种新的编程月发布的一种新的编程语言,并定于在微软职业开发者论坛(语言,并定于在微软职业开发者论坛(PDC)上上登台亮相。登台亮相。C#是是微微软公司公司研究院研究院Anders Hejlsberg的最新成果。的最新成果。C#看起来与看起来与Java有着惊有着惊人的相似;它包括了诸如单一继承、界面、与人的相似;它包括了诸如单一继承、界面、与Java几乎同样的语法,和编译成几乎同样的语法,和编译成中中间代代码再运再运行的行的过程。但是程。但是C#与与Java有着明显的不同,它有着明显的不同,它借鉴了借鉴了Delphi的一个特点,与的一个特点,与COM(组件件对象模象模型型)是直接集成的,而且它是是直接集成的,而且它是微微软公司公司.NET windows网络网络框架框架的主角。的主角。C#是微软对这一问题的解决方案。C#是一种最新的、面向对象的编程语言。它使得程序员可以快速地编写各种基于MICROSOFT.NET平台的应用程序,MICROSOFT.NET提供了一系列的工具和服务来最大程度地开发利用计算与通讯领域。正是由于C#面向对象的卓越设计,使它成为构建各类组件的理想之选无论是高级的商业对象还是系统级的应用程序。使用简单的C#语言结构,这些组件可以方便的转化为XML网络服务,从而使它们可以由任何语言在任何操作系统上通过INTERNET进行调用。最重要的是,C#使得C+程序员可以高效的开发程序,而绝不损失C/C+原有的强大的功能。因为这种继承关系,C#与C/C+具有极大的相似性,熟悉类似语言的开发者可以很快的转向C#。C#是微软公司在2000年7月发布的一种全新且简单、安全、面向对象的程序设计语言,是专门为.NET的应用而开发的语言。它吸收了C+、Visual Basic、Delphi、Java等语言的优点,体现了当今最新的程序设计技术的功能和精华。C#继承了C语言的语法风格,同时又继承了C+的面向对象特性。不同的是,C#的对象模型已经面向Internet进行了重新设计,使用的是.NET框架的类库;C#不再提供对指针类型的支持,使得程序不能随便访问内存地址空间,从而更加健壮;C#不再支持多重继承,避免了以往类层次结构中由于多重继承带来的可怕后果。.NET框架为C#提供了一个强大的、易用的、逻辑结构一致的程序设计环境。同时,公共语言运行时(Common Language Runtime)为C#程序语言提供了一个托管的运行时环境,使程序比以往更加稳定、安全。其特点有:语言简洁。保留了C+的强大功能。快速应用开发功能。语言的自由性。强大的Web服务器控件。支持跨平台。与XML相融合。常见语言Java语言:Java是一种可以撰写跨平台应用软件的面向对象的程序设计语言,是由Sun Microsystems公司于1995年5月推出的Java程序设计语言和Java平台(即JavaSE,JavaEE,JavaME)的总称。Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于个人PC、数据中心、游戏控制台、科学超级计算机、移动电话和互联网,同时拥有全球最大的开发者专业社群。在全球云计算和移动互联网的产业环境下,Java更具备了显著优势和广阔前景。JAVA简介Java是由Sun Microsystems公司于1995年5月推出的Java面向对象程序设计语言(以下简称Java语言)和Java平台的总称。由James Gosling和同事们共同研发,并在1995年正式推出。用Java实现的HotJava浏览器(支持Java applet)显示了Java的魅力:跨平台、动态的Web、Internet计算。从此,Java被广泛接受并推动了Web的迅速发展,常用的浏览器均支持Java applet。另一方面,Java技术也不断更新。(2010年Oracle公司收购了SUN)Java由四方面组成:Java编程语言、Java类文件格式、Java虚拟机和Java应用程序接口(Java API)。Java名字的来源Java是印度尼西亚爪哇岛的英文名称,因盛产咖啡而闻名。Java语言中的许多库类名称,多与咖啡有关:如JavaBeans(咖啡豆)、NetBeans(网络豆)以及ObjectBeans(对象豆)等等。SUN和JAVA的标识也正是一杯正冒着热气的咖啡。Java分为三个体系J2SE(Java2 Platform Standard Edition,java平台标准版),J2EE(Java 2 Platform,Enterprise Edition,java平台企业版),J2ME(Java 2 Platform Micro Edition,java平台微型版)。与传统程序不同,Sun 公司在推出 Java 之际就将其作为一种开放的技术。全球数以万计的 Java 开发公司被要求所设计的 Java 软件必须相互兼容。“Java 语言靠群体的力量而非公司的力量”是Sun公司的口号之一,并获得了广大软件开发商的认同。这与微软公司所倡导的注重精英和封闭式的模式完全不同。Sun 公司对 Java 编程语言的解释是:Java 编程语言是个简单、面向对象、分布式、解释性、健壮、安全与系统无关、可移植、高性能、多线程和动态的语言。Java 平台是基于 Java 语言的平台。这样的平台非常流行1。因此微软公司推出了与之竞争的.NET平台以及模仿 Java 的C#语言。Java平台由Java虚拟机(Java Virtual Machine,简称JVM)和Java 应用编程接口(Application Programming Interface,简称API)构成。Java 应用编程接口为Java应用提供了一个独立于操作系统的标准接口,可分为基本部分和扩展部分。在硬件或操作系统平台上安装一个Java平台之后,Java应用程序就可运行。Java平台已经嵌入了几乎所有的操作系统。这样Java程序可以只编译一次,就可以在各种系统中运行。Java应用编程接口已经从1.1x版发展到1.2版。常用的Java平台基于Java1.4,最近版本为Java1.7。优劣势java优势,是适合团队开发,软件工程可以相对做到规范,这是一个很难比拟的优势。java劣势,是j2ee的架构很完美,第一版软件可以做满意,但是很不适合互联网模式的持续不断修改。互联网软件工程管理上的不足,持续的修修补补导致架构的破坏。语言特点Java编程语言的风格十分接近C、C+语言。Java是一个纯粹的面向对象的程序设计语言,它继承了 C+语言面向对象技术的核心。Java舍弃了C语言中容易引起错误的指针(以引用取代)、运算符重载(operator overloading)、多重继承(以接口取代)等特性,增加了垃圾回收器功能用于回收不再被引用的对象所占据的内存空间,使得程序员不用再为内存管理而担忧。在 Java 1.5 版本中,Java 又引入了泛型编程(Generic Programming)、类型安全的枚举、不定长参数和自动装/拆箱等语言特性。Java 不同于一般的编译执行计算机语言和解释执行计算机语言。它首先将源代码编译成二进制字节码(bytecode),然后依赖各种不同平台上的虚拟机来解释执行字节码。从而实现了“一次编译、到处执行”的跨平台特性。不过,每次的执行编译后的字节码需要消耗一定的时间,这同时也在一定程度上降低了 Java 程序的运行效率。主要特性Java语言是简单的。Java语言的语法与C语言和C+语言很接近,使得大多数程序员很容易学习和使用Java5。另一方面,Java丢弃了C+中很少使用的、很难理解的、令人迷惑的那些特性,如操作符重载、多继承、自动的强制类型转换。特别地,Java语言不使用指针,并提供了自动的废料收集,使得程序员不必为内存管理而担忧。Java语言是面向对象的。Java语言提供类、接口和继承等原语,为了简单起见,只支持类之间的单继承,但支持接口之间的多继承,并支持类与接口之间的实现机制(关键字为implements)。Java语言全面支持动态绑定,而C+语言只对虚函数使用动态绑定。总之,Java语言是一个纯的面向对象程序设计语言。Java语言是分布式的。Java语言支持Internet应用的开发,在基本的Java应用编程接口中有一个网络应用编程接口(java net),它提供了用于网络应用编程的类库,包括URL、URLConnection、Socket、ServerSocket等。Java的RMI(远程方法激活)机制也是开发分布式应用的重要手段。Java语言是健壮的。Java的强类型机制、异常处理、垃圾的自动收集等是Java程序健壮性的重要保证。对指针的丢弃是Java的明智选择。Java的安全检查机制使得Java更具健壮性。Java语言是安全的。Java通常被用在网络环境中,为此,Java提供了一个安全机制以防恶意代码的攻击。除了Java语言具有的许多安全特性以外,Java对通过网络下载的类具有一个安全防范机制(类ClassLoader),如分配不同的名字空间以防替代本地的同名类、字节代码检查,并提供安全管理机制(类SecurityManager)让Java应用设置安全哨兵。Java语言是体系结构中立的。Java程序(后缀为java的文件)在Java平台上被编译为体系结构中立的字节码格式(后缀为class的文件),然后可以在实现这个Java平台的任何系统中运行。这种途径适合于异构的网络环境和软件的分发。Java语言是可移植的。这种可移植性来源于体系结构中立性,另外,Java还严格规定了各个基本数据类型的长度。Java系统本身也具有很强的可移植性,Java编译器是用Java实现的,Java的运行环境是用ANSI C实现的。Java语言是解释型的。如前所述,Java程序在Java平台上被编译为字节码格式,然后可以在实现这个Java平台的任何系统中运行。在运行时,Java平台中的Java解释器对这些字节码进行解释执行,执行过程中需要的类在联接阶段被载入到运行环境中。Java是高性能的。与那些解释型的高级脚本语言相比,Java的确是高性能的。事实上,Java的运行速度随着JIT(Just-In-Time)编译器技术的发展越来越接近于C+。Java语言是多线程的。在Java语言中,线程是一种特殊的对象,它必须由Thread类或其子(孙)类来创建。通常有两种方法来创建线程:其一,使用型构为Thread(Runnable)的构造子将一个实现了Runnable接口的对象包装成一个线程,其二,从Thread类派生出子类并重写run方法,使用该子类创建的对象即为线程。值得注意的是Thread类已经实现了Runnable接口,因此,任何一个线程均有它的run方法,而run方法中包含了线程所要运行的代码。线程的活动由一组方法来控制。Java语言支持多个线程的同时执行,并提供多线程之间的同步机制(关键字为synchronized)。Java语言是动态的。Java语言的设计目标之一是适应于动态变化的环境。Java程序需要的类能够动态地被载入到运行环境,也可以通过网络来载入所需要的类。这也有利于软件的升级。另外,Java中的类有一个运行时刻的表示,能进行运行时刻的类型检查。Java语言的优良特性使得Java应用具有无比的健壮性和可靠性,这也减少了应用系统的维护费用。Java对对象技术的全面支持和Java平台内嵌的API能缩短应用系统的开发时间并降低成本。Java的编译一次,到处可运行的特性使得它能够提供一个随处可用的开放结构和在多平台之间传递信息的低成本方式。特别是Java企业应用编程接口(Java Enterprise APIs)为企业计算及电子商务应用系统提供了有关技术和丰富的类库。3C#与Java的比较 C#面向对象的程度比Java高。C#中的基本类型都是面向对象的。C#具有比Java更强大的功能。C#语言的执行速度比Java快。thats all ,thank you!
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 管理文书 > 施工组织


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!