欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    第2章 面向对象方法与技术基础优秀PPT.ppt

    • 资源ID:74019361       资源大小:2.15MB        全文页数:43页
    • 资源格式: PPT        下载积分:18金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要18金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    第2章 面向对象方法与技术基础优秀PPT.ppt

    第第2章章 面向对象方法与技术基础面向对象方法与技术基础现在学习的是第1页,共43页哈尔滨工程大学计算机科学与技术学院哈尔滨工程大学计算机科学与技术学院 面向对象设计范型面向对象设计范型2.1面向对象的基本概念面向对象的基本概念2.2 抽象数据类型抽象数据类型2.3面向对象涉及的其他概念面向对象涉及的其他概念2.4现在学习的是第2页,共43页哈尔滨工程大学计算机科学与技术学院哈尔滨工程大学计算机科学与技术学院2.1 面向对象设计范型面向对象设计范型1.范型范型v过程性范型过程性范型v函数型范型函数型范型v逻辑型范型逻辑型范型v面向进程范型面向进程范型v面向对象范型面向对象范型v混合范型混合范型现在学习的是第3页,共43页哈尔滨工程大学计算机科学与技术学院哈尔滨工程大学计算机科学与技术学院2.1 面向对象设计范型面向对象设计范型2.过程性范型与面向对象范型的比较过程性范型与面向对象范型的比较v模块与对象模块与对象v过程调用与消息传递过程调用与消息传递v类型与类类型与类v静态连接与动态连接静态连接与动态连接现在学习的是第4页,共43页哈尔滨工程大学计算机科学与技术学院哈尔滨工程大学计算机科学与技术学院2.1 面向对象设计范型面向对象设计范型3.语言对面向对象范型的支持语言对面向对象范型的支持中中高高低低是是否否否否好好中中好好优优差差中中有有无无有有几乎纯几乎纯粹粹OOOO+其其他风格他风格纯粹纯粹OOJavaC+Smalltalk执行执行效率效率支持分支持分布处理布处理平台平台独立性独立性安全性安全性虚拟机虚拟机风格风格支持支持语言语言现在学习的是第5页,共43页哈尔滨工程大学计算机科学与技术学院哈尔滨工程大学计算机科学与技术学院 面向对象设计范型面向对象设计范型2.1面向对象的基本概念面向对象的基本概念2.2 抽象数据类型抽象数据类型2.3面向对象涉及的其他概念面向对象涉及的其他概念2.4现在学习的是第6页,共43页哈尔滨工程大学计算机科学与技术学院哈尔滨工程大学计算机科学与技术学院2.2 面向对象的基本概念面向对象的基本概念1.类(类(Class)v描述描述以以ADT为基础为基础的对象行为,指定了实现细节和数据结构。的对象行为,指定了实现细节和数据结构。v类定义类定义对一组客观对象的抽象,是具有共同属性和操作的多个对象的相似特性的统一体。对象类的略写,是对象的抽象,是一种对象模型,它描述了属于该对象类型的所有对象的性质。Integer是一个整数类,它描述了所有整数的性质。现在学习的是第7页,共43页哈尔滨工程大学计算机科学与技术学院哈尔滨工程大学计算机科学与技术学院2.2 面向对象的基本概念面向对象的基本概念1.类(类(Class)v类的实现类的实现外部特性:描述消息模式及其相应的处理能力。内部实现:描述内部状态的表现形式及固有处理能力的实现。现在学习的是第8页,共43页哈尔滨工程大学计算机科学与技术学院哈尔滨工程大学计算机科学与技术学院2.2 面向对象的基本概念面向对象的基本概念1.类(类(Class)v类的实现类的实现消息模式消息模式1:处理能力:处理能力1消息模式消息模式n:处理能力:处理能力n消息模式消息模式1 处理能力处理能力1的实现的实现消息模式消息模式n 处理能力处理能力n的实现的实现内部状态的表现形式内部状态的表现形式外部特性外部特性内部实现内部实现现在学习的是第9页,共43页哈尔滨工程大学计算机科学与技术学院哈尔滨工程大学计算机科学与技术学院2.2 面向对象的基本概念面向对象的基本概念1.类(类(Class)v父类、子类、超类父类、子类、超类父类:一个类的上层是父类。子类:一个类的下层是子类。超类:如果C2是C1的子类,C3是C2的子类,则C1是C3的超类。运输工具运输工具轮船轮船车辆车辆飞机飞机火车火车汽车汽车现在学习的是第10页,共43页哈尔滨工程大学计算机科学与技术学院哈尔滨工程大学计算机科学与技术学院2.2 面向对象的基本概念面向对象的基本概念1.类(类(Class)v描述描述可见性:属性和方法v公有的(public)v受保护的(protected)v私有的(private)属性属性方法方法类名类名v属性是类中对象所具有的数据值,是对对象的描述。如Person的属性有姓名、年龄、体重等。v不同对象的同一属性可以具有相同或不同的属性值。如张三的年龄为19,李四的年龄为20。v属性表示在类图中的第二部分。每个属性名后均可附加一些说明,诸如类型和缺省值之类。v操作以某种方式改变对象,即改变对象包含的一个或多个属性值。v对象所能执行的操作称为方法,也就是类中所定义的服务。方法描述了对象执行操作的算法、响应消息的操作。v每个操作都有一目标对象作为其隐含参数,操作的行为取决于其目标对象所归属的类。对象“知道”其所归属的类,所以能正确地实现该操作。v同一操作可适用于不同的类。操作的多态性指的是在不同的类中,同一操作的形式不同。现在学习的是第11页,共43页哈尔滨工程大学计算机科学与技术学院哈尔滨工程大学计算机科学与技术学院2.2 面向对象的基本概念面向对象的基本概念2.对象(对象(Object)v对象是所有对象是所有数据数据及可对这些及可对这些数据施加的操作数据施加的操作结合在一起所结合在一起所构成的构成的独立单位独立单位的总称,是具有一定知识和处理能力的的总称,是具有一定知识和处理能力的独立个体独立个体。v从信息模拟的角度看:从信息模拟的角度看:对象是对问题域中某个东西的抽象,这种抽象反映了系统保存有关这个东西的信息和与它交互的能力,即对象是对属性值和操作的封装。现在学习的是第12页,共43页哈尔滨工程大学计算机科学与技术学院哈尔滨工程大学计算机科学与技术学院2.2 面向对象的基本概念面向对象的基本概念2.对象(对象(Object)v对象是和有对象是和有数据数据及可对这些及可对这些数据施加的操作数据施加的操作结合在一起所构结合在一起所构成的成的独立单位独立单位的总称,是具有一定知识和处理能力的的总称,是具有一定知识和处理能力的独立个独立个体体。v从形式化的角度看:从形式化的角度看:对象:=其中:ID是对象的标识或名字,MS是对象中的数据集合,DS是对象中的数据结构,MI是对象受理的消息名集合。v一一个个对对象象是是用用特特定定的的类类来来说说明明,称称为为类类的的一一个个实实例例(Instance)。)。现在学习的是第13页,共43页哈尔滨工程大学计算机科学与技术学院哈尔滨工程大学计算机科学与技术学院2.2 面向对象的基本概念面向对象的基本概念2.对象(对象(Object)v特点特点具有一个状态,由其相关联的几个属性值所表征。具有唯一标识名,可以区别于其它对象。有一组操作方法,每个操作决定对象的一种行为。对象的状态只能被自身的行为所改变。对象的操作包括自操作(施于自身)和它操作(施于其它对象)对象之间以消息传递的方式进行通信。一个对象的成员仍可以是一个对象。现在学习的是第14页,共43页哈尔滨工程大学计算机科学与技术学院哈尔滨工程大学计算机科学与技术学院2.2 面向对象的基本概念面向对象的基本概念3.消息(消息(Message)v消消息息是是用用来来请请求求对对象象执执行行某某一一处处理理或或回回答答某某一一要要求求的的信信息息,是是对对象象之之间间建建立立的的一一种种通通信信机机制制,它它统统一一了了数数据据流流和和控控制制流流。是系统构成的是系统构成的基本元素基本元素。v一个对象所能一个对象所能接受的消息接受的消息及其及其所带的参数所带的参数构成对象的构成对象的外部接口外部接口。v组成:组成:接收消息的对象消息标识符(即消息名)零个或多个变元(参数)MyCircle.Show(Green)。现在学习的是第15页,共43页哈尔滨工程大学计算机科学与技术学院哈尔滨工程大学计算机科学与技术学院2.2 面向对象的基本概念面向对象的基本概念3.消息(消息(Message)v消息传递可以实现消息传递可以实现对象间联系对象间联系。v消消息息中中只只包包含含传传递递者者的的要要求求,但但不不指指示示接接受受者者应应该该怎怎样样完完成成这这些些处处理理。消消息息完完全全由由接接受受者者解解释释,接接受受者者独独立立决决定定采采用用什什么么方式完成所需的处理,方式完成所需的处理,发送者对接受者不起任何控制作用发送者对接受者不起任何控制作用。v一一个个对对象象能能够够接接受受不不同同形形式式多多个个消消息息;相相同同形形式式的的消消息息可可以以送送往往不不同同的的对对象象,不不同同的的对对象象对对于于形形式式不不同同的的消消息息可可以以有有不不同同的的解释解释,能够做出不同的反映。,能够做出不同的反映。v一一个个对对象象可可以以同同时时往往多多个个对对象象传传递递信信息息,两两个个对对象象也也可可以以同同时时向向某个对象传递消息某个对象传递消息。现在学习的是第16页,共43页哈尔滨工程大学计算机科学与技术学院哈尔滨工程大学计算机科学与技术学院2.2 面向对象的基本概念面向对象的基本概念3.消息(消息(Message)v接受者接受者响应消息的过程响应消息的过程:选择符合消息要求的操作执行该操作将控制权返回调用者v消消息息协协议议:是是一一个个对对象象对对外外提提供供服服务务的的规规定定格格式式说说明明,外外界界对对象象能能够够并并且且只只能能向向该该对对象象发发送送协协议议中中提提供供的的消消息息,请请求求该该对对象服务。象服务。v公有消息公有消息:可由其他对象向它发送。:可由其他对象向它发送。v私有消息私有消息:由它自己向本身发送。:由它自己向本身发送。现在学习的是第17页,共43页哈尔滨工程大学计算机科学与技术学院哈尔滨工程大学计算机科学与技术学院2.2 面向对象的基本概念面向对象的基本概念4.继承性(继承性(Inheritance)v广义地说,继承是指能够广义地说,继承是指能够直接获得已有的性质和特征直接获得已有的性质和特征,而不必,而不必重复定义它们。在面向对象中,继承是重复定义它们。在面向对象中,继承是子类自动子类自动地地共享基类中共享基类中定义定义的数据和方法的数据和方法的机制。的机制。v继承具有继承具有传递性传递性如果类C继承类B,类B继承类A,则类C继承类A。v单重继承与多重继承单重继承与多重继承单重继承:一个类只允许有一个父类,即类等级为树形结构。多重继承:一个类允许有多个父类。现在学习的是第18页,共43页哈尔滨工程大学计算机科学与技术学院哈尔滨工程大学计算机科学与技术学院A的操作的操作A的变量的变量类A类类AA的实例变量的实例变量A的实例a1从从A继承特性继承特性B的操作的操作B的变量的变量类B:A的子类类类B继承来的继承来的A的实的实例变量例变量B的实例变量的实例变量B的实例b1实现继承机制的原理2.2 面向对象的基本概念面向对象的基本概念4.继承性(继承性(Inheritance)现在学习的是第19页,共43页哈尔滨工程大学计算机科学与技术学院哈尔滨工程大学计算机科学与技术学院2.2 面向对象的基本概念面向对象的基本概念4.继承性(继承性(Inheritance)v优点优点共享代码和数据结构,减少冗余信息,提高软件的可重用性。便于软件修改维护。当扩充原有的功能时,派生类的方法可以调用其基类的方法,并在此基础上增加必要的程序代码;当完全改变原有的算法时,可以在派生类中实现一个与基类方法同名而算法不同的方法;当增加新的功能时,可以在派生类中实现一个新的方法。“站在巨人的肩头上”。用户在开发新系统时不必从零开始,可以继承原有相似功能或者从类库中选取需要的类,再派生新类。现在学习的是第20页,共43页哈尔滨工程大学计算机科学与技术学院哈尔滨工程大学计算机科学与技术学院4.继承性(继承性(Inheritance)v多重继承与聚合(多重继承与聚合(Aggregation)聚合是一个通用对象,可以用来组装一组任意的对象。反映整体与部分的关系。多重继承给出了一种用子类实现聚合的机制,反映普遍与特殊的关系。它们是不同的概念。v继承与组合(继承与组合(Composition)类继承:白盒复用(white-box reuse)对象组合:黑箱复用(white-box reuse)2.2 面向对象的基本概念面向对象的基本概念现在学习的是第21页,共43页哈尔滨工程大学计算机科学与技术学院哈尔滨工程大学计算机科学与技术学院引擎类机翼类机身类尾翼类飞机类2.2 面向对象的基本概念面向对象的基本概念现在学习的是第22页,共43页哈尔滨工程大学计算机科学与技术学院哈尔滨工程大学计算机科学与技术学院4.继承性(继承性(Inheritance)v继承的特点:继承的特点:类继承是编译时刻静态定义的,可直接使用。继承对子类揭示了父类的实现细节,破坏了封装性。父类实现中的任意变化必然导致子类发生变化。依赖关系限制了灵活性、复用性。v对象组合的特点:对象组合的特点:通过获得其它对象的引用而在运行时刻动态定义的。对象只能通过接口访问,不能破坏封装。对象实现是基于接口写的,实现上存在较少的依赖关系。2.2 面向对象的基本概念面向对象的基本概念面向对象设计原则:面向对象设计原则:优先使用对象组合,而不是继承。优先使用对象组合,而不是继承。现在学习的是第23页,共43页哈尔滨工程大学计算机科学与技术学院哈尔滨工程大学计算机科学与技术学院5.封装性(封装性(Encapsulation)v封装封装是指将是指将方法与数据同放于一对象方法与数据同放于一对象中,以使对数据的存取只中,以使对数据的存取只通过通过该对象本身的方法该对象本身的方法。v面向对象程序的其它部分(对象以外的部分)都面向对象程序的其它部分(对象以外的部分)都不能直接作用不能直接作用于一对象的数据于一对象的数据,对象间的通信只能通过明确的,对象间的通信只能通过明确的消息消息来进行。来进行。2.2 面向对象的基本概念面向对象的基本概念现在学习的是第24页,共43页哈尔滨工程大学计算机科学与技术学院哈尔滨工程大学计算机科学与技术学院6.多态性(多态性(Polymorphism)v对象根据所接受的消息而做出动作,对象根据所接受的消息而做出动作,同样的消息同样的消息为不同的对象为不同的对象接受时可导致完全接受时可导致完全不同的行动不同的行动,该现象称为,该现象称为多态性多态性。v利用多态性,用户能够发送一般形式的消息,而将所有的实现细节利用多态性,用户能够发送一般形式的消息,而将所有的实现细节都留给接受消息的对象。都留给接受消息的对象。v优点:优点:多态性机制增加了面向对象软件系统的灵活性,进一步减少了信息冗余。显著提高软件的可重用性和可扩展性。2.2 面向对象的基本概念面向对象的基本概念现在学习的是第25页,共43页哈尔滨工程大学计算机科学与技术学院哈尔滨工程大学计算机科学与技术学院2.2 面向对象的基本概念面向对象的基本概念7.动态联编(动态联编(Dynamic Binding)v联编是将联编是将模块或者函数合并模块或者函数合并在一起生成在一起生成可执行代码可执行代码的处理过的处理过程,同时对每个模块或者函数调用程,同时对每个模块或者函数调用分派内存地址分派内存地址,并且对,并且对外部访问也分配正确的内存地址。外部访问也分配正确的内存地址。静态联编动态联编v动态联编和多态密切相关。动态联编和多态密切相关。现在学习的是第26页,共43页哈尔滨工程大学计算机科学与技术学院哈尔滨工程大学计算机科学与技术学院2.2 面向对象的基本概念面向对象的基本概念8.重载(重载(Overloading)v函数函数和和操作符操作符的重载即一个标识符或一个符号有的重载即一个标识符或一个符号有一种以上的一种以上的操作操作(含义)。(含义)。v目的:增加程序的目的:增加程序的易读性易读性和和操作一致性操作一致性。v继承与重载的关系继承与重载的关系:相同点:节省代码。不同点:继承是静态关系,重载既可以静态定义也可以动态定义。现在学习的是第27页,共43页哈尔滨工程大学计算机科学与技术学院哈尔滨工程大学计算机科学与技术学院调用处于系统控制之下调用处于系统控制之下继承继承类类消息消息实例变量实例变量方法方法传统技术面向对象调用处于程序员控制之下调用处于程序员控制之下无类似技术无类似技术抽象数据类型抽象数据类型过程或参数调用过程或参数调用数据数据过程、函数或子例程过程、函数或子例程总结总结现在学习的是第28页,共43页哈尔滨工程大学计算机科学与技术学院哈尔滨工程大学计算机科学与技术学院总结总结v从继承的角度看,从继承的角度看,超类超类集中描述了一组集中描述了一组子类的共同特性子类的共同特性,因,因此设计了超类代码,则所有子类均可共享,这就此设计了超类代码,则所有子类均可共享,这就提高了代码提高了代码效率效率,增加其,增加其“可重用性可重用性”。v由于由于多态多态特性,子类利用多态可以有很大的灵活性,而特性,子类利用多态可以有很大的灵活性,而且有且有共同的方法名共同的方法名,这样就增强了程序的,这样就增强了程序的适应能力和强壮性适应能力和强壮性。v由于类是高度封装了的模块,具有清晰的接口,它封装由于类是高度封装了的模块,具有清晰的接口,它封装数据和这些数据上的操作,因此数据和这些数据上的操作,因此类是大型程序最行之有效的类是大型程序最行之有效的构造模块构造模块,并以此为基础来实现,并以此为基础来实现“软件软件”。v由于这些概念与人的思维本身相一致,还可以导致更自然由于这些概念与人的思维本身相一致,还可以导致更自然的设计,即所设计的软件与目标世界有良好的对应关系,的设计,即所设计的软件与目标世界有良好的对应关系,这样的软件很这样的软件很容易维护容易维护。现在学习的是第29页,共43页哈尔滨工程大学计算机科学与技术学院哈尔滨工程大学计算机科学与技术学院习题习题v解释概念:解释概念:对象、类、消息、继承、多态、动态联编、接口、持久对象、主动对象现在学习的是第43页,共43页

    注意事项

    本文(第2章 面向对象方法与技术基础优秀PPT.ppt)为本站会员(石***)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

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

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开