网站大量收购闲置独家精品文档,联系QQ:2885784924

01-面向对象概述教学.ppt

  1. 1、本文档共33页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
chapter1 Object-Oriented Programming 面向对象概述 课程目标与要求 学习目标 掌握用C++进行面向对象编程的思想与方法; 培养良好的编程风格和习惯; 掌握 Visual C++ 编程环境(IDE)的使用。 教学要求 平时作业和大作业不允许抄袭,否则记成0分; 考勤和作业记入平时成绩。 考核 综合成绩=期末成绩×50%+平时成绩×20%+实验成绩×30% 平时成绩=考勤(迟到、早退、旷课)+ 态度(课堂纪律) 注:旷课一次扣 4 分,迟到一次扣 2 分(若不够从总成绩扣) 实验成绩=程序×50% + 文档×10% + 答辩×40% 面向对象的产生背景 软件危机与程序设计方法 两种流行的程序设计方法 面向过程的程序设计 面向对象的程序设计(Object-Oriented Programming) 面向过程的程序设计 始于20世纪70年代的结构化分析设计(Structured Analysis and Design, SAD)方法。 把一个系统看作是功能的集合,可以进行分解。 程序=数据结构+算法 软件程序由很多模块组成,这些模块就是过程,C语言中称为函数。 在面向对象的程序设计语言 中,这样的函数称为方法 (Method)。 面向过程的程序设计 自顶向下的设计方法 把解决的问题同一个过程关联,自顶向下功能分解,直到子问题足够简单,可以在相应的子过程中解决。 结构化程序设计的结果是一个程序最终由若干过程组成,每一过程完成一个明确的功能。 面向过程的程序设计 存在的缺陷:数据与过程分离 靠直觉和顺序化,难以把复杂事物表达清楚; 系统测试、调试和升级维护困难。 后果 数据结构变化 → 处理该数据的算法修改(重写) 过程的修改 → 子过程修改 → 波及到分解层 …… 最痛苦的事情不是开始的编程,而是在以后修改它。 面向对象的程序设计(OOP) 发源于20世纪60年代,Simula语言中引入了类(Class)的概念; 真正的面向对象程序设计是Smalltalk语言奠定基础的,“面向对象”一词也是Smalltalk首先采用的; C++的问世促进面向对象技术的发展,也使之成为标准化的面向对象程序设计(Object Oriented Programming)语言。 OOP使程序能够比较直接地反问题域的本来面目,软件开发人员能够利用人类认识事物所采用的一般思维方法来进行软件开发。 面向对象的程序设计和问题求解力求符合人们日常自然的思维习惯,降低分解问题的难度和复杂性,提高整个求解过程的可控制性,可监测性和可维护性。 面向对象的程序设计 面向对象程序的基本元素为对象(Object)。 程序结构一般由类的定义和类的使用两部分组成。 程序中的一切操作都是通过向对象发送相应的消息来实现:对象接收到消息后,启动有关的方法完成相应的操作。 Coad和Yourdon给出了一个定义: 面向对象=对象+类+继承+通信 如果一个软件系统是使用这些概念设计和实现的,则我们认为这个软件系统是面向对象的。 在面向过程软件开发中优先考虑的是过程抽象,在面向对象软件开发中优先考虑的是实体(问题论域的对象)。 面向对象的程序设计 优点 对象的封装性彻底消除了传统结构方法中数据与操作分离所带来的种种问题,提高了程序的可复用性和可维护性; 直观性; 可增加程序的模块性(Modularity) 可提高程序的可复用性(Reusability) 增加可扩展性(Extendibility) 可改善程序的可维护性(Maintainability; 可控制程序的复杂性 可改进质量,降低成本 面向对象的程序设计 需要注意的地方 面向对象需要完全改变每个人的思想以及开发文化 ; 面向对象不仅仅是编程; 面向对象需要更关注于需求、分析和设计; 开发人员必须和用户紧密合作; 面向对象的许多优点要经过较长的时间才能显示出来; 面向对象技术不能保证你能构建出正确的系统。 面向对象语言: C++(混合型) Java(纯粹的面向对象语言) 面向对象的基本概念 对象 对象是问题域中事物的抽象(对现实事物的逻辑描述) 对象不能完全代表事物,只是对于现实事物的逻辑表达,或者可看作是一个符号。 在面向对象程序设计中,对象是属性及其操作的封装体。 对象的特性: ⑴唯一标识名,区别其他对象; ⑵属性(域),成员变量,静态特征; ⑶方法(操作、服务),描述对象执行的功能,动态特征。 对象的成员仍然可以是一个对象,对象之间通过消息传递进行通信。 面向对象的基本概念 对象 面向对象的基本概念 类 类(class)是对对象(object)的抽象和归纳,是一组具有相同数据结构和相同操作的对象的集合 。 对象是类的实例,类是创建对象的模板。 类的成

文档评论(0)

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

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

1亿VIP精品文档

相关文档