《3面向对象技术_v01》-公开课件.pptVIP

  1. 1、本文档共20页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
西安交通大学 仪器科学与技术系 西安交通大学 仪器科学与技术系 面向对象技术 侯成刚 西安交通大学 仪器科学与技术系 2011 年 3 月 本科生课程《虚拟仪器设计》 * 概述 面向对象技术是一种全新的设计和构造软件的技术,它使计算机解决问题的方式更符合人类的思维方式,更能直接地描述客观世界,通过增加代码的可重用性、可扩充性和程序自动生成功能来提高编程效率,大大减少软件维护的开销。 已发展成为一种比较成熟的编程思想,是目前软件开发领域的主流技术 。 * 面向对象与面向过程的区别 (1) 在面向对象程序设计(Object Oriented Programming - OOP)方法出现之前,程序员用面向过程的方法开发程序。 程序 = 数据结构 + 算法 面向过程的方法把密切相关、相互依赖的数据和对数据的操作相互分离,这种实质上的依赖与形式上的分离使得大型程序难于编写、调试和修改。 在团队合作中,程序员之间很难读懂对方的代码,更谈不上代码的重用。由于现代应用程序规模越来越大,对代码的可重用性与易维护性的要求也相应提高,面向对象技术便应运而生了。 * 面向对象与面向过程的区别 (2) 面向对象技术是一种以对象为基础,以事件(或消息)来驱动对象执行处理的程序设计技术。 它以数据为中心而不是以功能为中心来描述系统,数据相对于功能而言具有更强的稳定性。 它将数据和对数据的操作封装在一起,作为一个整体来处理,采用数据抽象和信息隐蔽技术,将这个整体抽象成一种新的数据类型 ─ 类,并且考虑不同类之间的联系和类的重用性。 另一方面,面向对象程序的控制流程由运行时实际发生的事件来触发,而不再由预定顺序来决定,更符合实际。 * 对象与类的概念 (1) 与人们认识客观世界的规律一样,面向对象技术认为客观世界是由各种各样的对象组成,每种对象都有各自的内部状态和运动规律,不同对象间的相互作用和联系就构成了各种不同的系统,构成了客观世界。 面向对象技术强调在软件开发过程中面向客观世界或问题域中的事物,采用人类在认识客观世界的过程中普遍运用的思维方法,直观、自然地描述客观世界中的有关事物。 在面向对象程序中,客观世界被描绘成一系列完全自治、封装的对象,这些对象通过外部接口访问其他对象。 对象是组成一个系统的基本逻辑单元,是一个有组织形式的含有信息的实体。而类是创建对象的样板,在整体上代表一组对象,设计类而不是设计对象可以避免重复编码,类只需要编码一次,就可以创建本类的所有对象。 * 对象与类的概念 (2) 对象(Object)由属性(Attribute)和行为(Action)两部分组成。 属性:是用来描述对象静态特征的一个数据项。 行为:是用来描述对象动态特征的一个操作。 对象 = 属性(数据) + 行为(作用于这些数据上的操作) 对象是包含客观事物静态和动态特征的抽象实体,是属性和行为的封装体。 类(Class)是具有相同属性和行为的一组对象的集合,它为属于该类的全部对象提供了统一的抽象描述,其内部包括属性和行为两个主要部分,类是对象集合的再抽象。 类与对象的关系如同一个模具与用这个模具铸造出来的铸件之间的关系。类给出了属于该类的全部对象的抽象定义,而对象则是符合这种定义的一个实体。所以,一个对象又称作类的一个实例(Instance)。 * 消息与事件的概念 事件(Event)是对象之间发出的行为请求,由多个消息组成,而消息(Message)是描述事件发生的信息。 封装使对象成为一个相对独立的实体,而消息机制为对象提供了一个相互间动态联系的途径,使它们的行为能互相配合,构成一个有机的运行系统。 对象通过对外提供的行为在系统中发挥自己的作用,当系统中的其他对象请求这个对象执行某个行为时,就向这个对象发送一个消息,这个对象就响应这个请求,完成指定的行为。 程序的执行取决于事件发生的顺序,而事件发生的顺序不必预先确定,这样更符合客观世界的实际。(事件驱动) * 由对象组成的系统 * 面向对象技术的基本特征 抽象性 封装性 继承性 多态性 * 抽象性 把众多的事物进行归纳、分类是人们在认识客观世界时经常采用的思维方法(“物以类聚、人以群分”),分类所依据的原则是抽象。 抽象(Abstract)就是忽略事物中与当前目标无关的非本质特征,更充分地注意与当前目标有关的本质特征。从而找出事物的共性,并把具有共性的事物划为一类,得到一个抽象的概念。 例如,在设计一个学生成绩管理系统时,考察学生张华这个对象时,就只关心他的班级、学号、成绩等,而忽略他的身高、体重等信息。 因此,抽象性是对事物的抽象概括描述,实现了客观世界向计算机世界的转化。将客观事物抽象成对象及类是比较难的过程,也是面向对象方法的第一步。 * 抽象性 学生1 学生2 学生3 学生4 学生5

文档评论(0)

saodishenseng2 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档