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

    《面向对象程序设计》教案.docx

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

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

    《面向对象程序设计》教案.docx

    面向对象程序设计教案 教案 分院(部)信息学院 教研室计算机科学与技术课程名称面向对象程序设计教师姓名金淑娟 职称讲师 使用教材C+语言程序设计 教务处制 第一节面向对象的方法 一、面向对象的语言 出发点: 更直接地描述客观世界中存在的事物(对象)以及它们之间的关系。 特点: 是高级语言。 将客观事物看作具有属性和行为的对象。 通过抽象找出同一类对象的共同属性和行为,形成类。 通过类的继承与多态实现代码重用。 优点: 使程序能够比较直接地反问题域的本来面目,软件开发人员能够利用人类认识事物所采用的一般思维方法来进行软件开发。 二、程序设计方法的发展历程 1面向过程的程序设计方法 程序的目的:用于数学计算。 主要工作:设计求解问题的过程。 缺点:对于庞大、复杂的程序难以开发和维护。 2面向过程的结构化程序设计方法 设计思路: 自顶向下、逐步求精。采用模块分解与功能抽象,自顶向下、分而治之。 程序结构: 按功能划分为若干个基本模块,形成一个树状结构。各模块间的关系尽可能简 单,功能上相对独立;每一模块内部均是由顺序、选择和循环三种基本结构组 成。其模块化实现的具体方法是使用子程序。 优点: 有效地将一个较复杂的程序系统设计任务分解成许多易于控制和处理的子任 务,便于开发和维护。 缺点: 可重用性差、数据安全性差、难以开发大型软件和图形界面的应用软件。具体有以下几点: 把数据和处理数据的过程分离为相互独立的实体。 当数据结构改变时,所有相关的处理过程都要进行相应的修改。 每一种相对于老问题的新方法都要带来额外的开销,程序的可重用性差。 图形用户界面的应用程序,很难用过程来描述和实现,开发和维护也都很困难。 3面向对象的方法 方法: ?将数据及对数据的操作方法封装在一起,作为一个相互依存、不可分离的整体对象。 ?对同类型对象抽象出其共性,形成类。 ?类通过一个简单的外部接口,与外界发生关系。 ?对象与对象之间通过消息进行通讯。 优点: ?程序模块间的关系更为简单,程序模块的独立性、数据的安全性就有了良好的保障。 ?通过继承与多态性,可以大大提高程序的可重用性,使得软件的开发和 维护都更为方便。 三、面向对象的基本概念 1一般意义上的对象: ?是现实世界中一个实际存在的事物。 ?可以是有形的(比如一辆汽车),也可以是无形的(比如一项计划)。 ?是构成世界的一个独立单位,具有: ?静态特征-可以用某种数据来描述 ?动态特征-对象所表现的行为或具有的功能 2面向对象方法中的对象: ?是系统中用来描述客观事物的一个实体,它是用来构成系统的一个基本单位。对象由一组属性和一组行为构成。 ?属性-用来描述对象静态特征的数据项。 ?行为-用来描述对象动态特征的操作序列。 3分类所依据的原则抽象 ?忽略事物的非本质特征,只注意那些与当前目标有关的本质特征,从而找出事物的共性,把具有共同性质的事物划分为一类,得出一个抽象的概念。 例如,石头、树木、汽车、分类人类通常的思维方法。 ?房屋等都是人们在长期的生产和生活实践中抽象出的概念。 4面向对象方法中的"类" ?具有相同属性和服务的一组对象的集合。 ?为属于该类的全部对象提供了抽象的描述,包括属性和行为两个主要部分。 ?类与对象的关系: 犹如模具与铸件之间的关系,一个属于某类的对象称为该类的一个实例。 5面向对象方法中的"封装" ?把对象的属性和服务结合成一个独立的系统单元。 ?尽可能隐蔽对象的内部细节。对外形成一个边界(或者说一道屏障),只保留有限的对外接口使之与外部发生联系。 6面向对象方法中的"继承" ?继承对于软件复用有着重要意义,是面向对象技术能够提高软件开发效率的重要原因之一。 ?定义:特殊类的对象拥有其一般类的全部属性与服务,称作特殊类对一般类的继承。 例如:将轮船作为一个一般类,客轮便是一个特殊类。 7面向对象方法中的"多态性" ?多态是指在一般类中定义的属性或行为,被特殊类继承之后,可以具有不同的数据类型或表现出不同的行为。这使得同一个属性或行为在一般类及其 各个特殊类中具有不同的语义。 例如:数的加法->实数的加法->复数的加法 第二节面向对象的软件开发 面向对象的软件工程(软件开发)是面向对象方法在软件工程领域的全面应用。它包括: 面向对象的分析(OOA) 面向对象的设计(OOD) 面向对象的编程(OOP) 面向对象的测试(OOT) 面向对象的软件维护(OOSM) 一、系统分析 ?系统分析阶段应该扼要精确地抽象出系统必须做什么,但是不关心如何去实现。 ?面向对象的系统分析,直接用问题域中客观存在的事物建立模型中的对象,对单个事物及事物之间的关系,都保留他们的原貌,不做转换,也不打破原有界 限而重新组合,因此能够很好地映射客观事物。 二、设计 ?针对系统的一个具体实现运用面向对象的方法。其中包括两方面的工作:把OOA模型直接搬到OOD,作为OOD的一部分。 针对具体实现中的人机界面、数据存储、任务管理等因素补充一些与实现有关的部分。 三、编程 OOP工作就是用一种面向对象的编程语言把OOD模型中的每个成分书写出来,是面向对象的软件开发最终落实的重要阶段。 四、测试 ?测试的任务是发现软件中的错误。 ?在面向对象的软件测试中继续运用面向对象的概念与原则来组织测试,以对象的类作为基本测试单位,可以更准确的发现程序错误并提高测试效率。 五、维护 将软件交付使用后,工作并没有完结,还要根据软件的运行情况和用户需求,不断改进系统。 使用面向对象的方法开发的软件,其程序与问题域是一致的,因此,在维护阶段运用面向对象的方法可以大大提高软件维护的效率。 第一节C+的面向对象的概念 一、抽象的概念 抽象是对具体对象(问题)进行概括,抽出这一类对象的公共性质并加以描述的过程。 先注意问题的本质及描述,其次是实现过程或细节。 数据抽象:描述某类对象的属性或状态(对象相互区别的物理量)。 代码抽象:描述某类对象的共有的行为特征或具有的功能。 抽象的实现:通过类的声明。 二、抽象实例 1日期 抽象实例 ?数据抽象: int Year, int Month, int Day ?代码抽象: SetDate(), /设置年、月、日 IsLeapYear(),/计算某年是否为闰年 ShowDate(),/显示年、月、日的值 抽象实例日期类 class Date public: void SetDate(int y, int m, int d); int IsLeapDate(); void ShowDate(); private: int Year,Month,Day; ; 2钟表 抽象实例-钟表 数据抽象: int Hour, int Minute, int Second 代码抽象: SetTime(), ShowTime() 抽象实例钟表类 class Clock public: void SetTime(int NewH, int New,int NewS); void ShowTime(); private: int Hour,Minute,Second; ; 3抽象实例人 数据抽象: char *name,char *gender,int age,int id 代码抽象: 生物属性角度: GetCloth(), Eat(), Step(), 社会属性角度: Work(), Promote() , 二、封装 将抽象出的数据成员、代码成员相结合,将它们视为一个整体。 目的是曾强安全性和简化编程,使用者不必了解具体的实现细节,而只需要通过外部接口,以特定的访问权限,来使用类的成员。 实现封装:类声明中的 实例: class Clock public: void SetTime(int NewH, int NewM, int NewS); void ShowTime(); private: int Hour,Minute,Second; ; 三、继承与派生 是C+中支持层次分类的一种机制,允许程序员在保持原有类特性的基础上,进行更具体的说明。 实现:声明派生类第七章 四、多态性 ?多态:同一名称,不同的功能实现方式。 ?目的:达到行为标识统一,减少程序中标识符的个数。 ?实现:重载函数和虚函数第八章 五、c+中的类 ?类是具有相同属性和行为的一组对象的集合,它为属于该类的全部对象提供了统一的抽象描述,其内部包括属性和行为两个主要部分。 ?利用类可以实现数据的封装、隐藏、继承与派生。 ?利用类易于编写大型复杂程序,其模块化程度比C中采用函数更高。 第二节类的定义格式

    注意事项

    本文(《面向对象程序设计》教案.docx)为本站会员(h****)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

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




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

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

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

    收起
    展开