




已阅读5页,还剩18页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
授课对象 20071151主讲教师 林清滢E mail lqying 面向对象程序设计 课程简介 本课程作为计算机专业的基础必修课程 主要介绍面向对象程序设计的基本概念 设计方法 详尽地讲述C 语言面向对象的基本特性 其内容包括类 对象 派生类 继承 多态性 虚函数 模板 流类库 异常处理等 通过本课程的教学 使学生掌握面向对象程序设计的基本思想与方法 使学生熟悉C 语言的主要特点和机制 进而学会利用C 语言解决一般应用问题 使学生在程序设计方法 程序设计语言与程序设计工具三方面受到训练 从而能熟练地利用计算机解决实际问题 为后续专业课程打下扎实的基础 参考资料 内容提要 本书是依据ANSIC 标准进行介绍的 引导读者从一开始就按标准C 的规定编程 本书是大学各专业学生学习C 的基础教材 也是适于初学者学习的教材 即使没有教师讲授 读者也能看懂本书的大部分内容 内容提要 书中也用了大量的篇幅 在标准库以及一般软件开发的环境下 讨论了使用C 语言编程和组织程序的许多高级技术 本书内容覆盖了C 语言及其程序设计的各个方面 其技术深度与广度是举世公认的 作者简介 BjarneStroustrup博士是C 语言的设计者和最初实现者 AT T实验室的大型程序设计研究部的首脑 他曾经获得 财富 杂志评选的 美国12位最年轻的科学家 称号 同时还是 BYTE 杂志评选出的 近20年来计算机工业最具影响力的20人 并且是历史最悠久 目前世界上最大的教育和科学计算协会ACM 美国计算机协会 的院士 内容提要 本书是C 领域一本权威的著作 书中的内容 讲授方法 选用例子和跟随练习既适合课堂教学 又适合读者自学 无论是高等院校计算机及相关专业的学生 还是业界的专业人员 以及广大的计算机爱好者 都可从阅读本书中获得宝贵的收益 第1章概述 Introduction 程序设计方法的概述 面向对象程序设计语言的概述 面向对象程序设计的主要特性 面向对象的软件开发 程序设计方法的概述 面向过程的结构化程序设计方法 在二十世纪五六十年代 一个软件项目往往是由单个人独立完成 当时人们认为写出的程序只要能在计算机上得出正确的结果 程序的写法可以不受任何约束 然而对于大型的 需要多人完成的项目 这种作坊式的开发方法显然行不通 于是人们开始尝试把其它工程领域中行之有效的方法应用到软件开发中来 在二十世纪六七十年代 YourdonE 和ConstantineL 等人借鉴工厂利用流水线组织生成的方法 提出了结构化程序开发技术 利用抽象模型的概念 按照数据传递 变换的关系 自顶向下 逐层细化地将系统分解成层级结构的模块 每个模块实现为一个函数或过程 这种方法最大的特点是数据和过程的分离 整个系统由一组被动的数据和一组能动的过程组成 其中数据表示某种信息 而过程完成对数据一定的处理 系统运行时 输入的数据从一个过程流向下一个过程 这好比流水线上的生产资料和半成品从一个工段到下一个工段 优点 能有效地将一个较复杂的程序系统设计任务分解成许多易于控制和处理的子任务 便于开发和维护 缺点 可重用性差 难以开发大型软件把数据和处理数据的过程分离为相互独立的实体 当数据结构改变时 所有相关的处理过程都要进行相应的修改 程序 算法 数据结构 例如 考虑一个银行系统 该系统允许顾客开设不同类型的银行账户 包括储蓄账户 结算账户 允许转帐 等 同时允许顾客存款 取款和查询等操作 首先考虑数据结构 structaccount char name 账户unsignedlongaccountId 账号floatbalance 余额floatinterestYTD 年利息characcountType 账户类型 储蓄账户 结算账户 再考虑用三个过程分别实现存款 取款和转帐等功能 我们可以设计三个函数 MakeDeposit WithDraw Transfer 这种数据结构与过程分离有很多问题 例如增加一种账户类型 信用卡账户 则三个函数都必须重新编写 面向对象程序设计方法 对象是OOP方法中最基本和最核心的概念 从程序设计的本质上看 对象是把数据和处理数据的过程当成一个整体 在C 中 对象 数据 函数 类是OOP方法中程序设计的主体 对同一类型对象抽象出其共性 形成类 类是对象的抽象 而对象是类的实例 面向对象程序设计语言的概述 Simula最早的具有面向对象思想的程序设计语言可追溯到20世纪60年代的Simula语言 Simula语言中引入了一些面向对象的重要概念 如数据抽象 类机制 继承机制等 SmalltalkSmalltalk语言是第一个真正面向对象的程序设计语言 Smalltalk语言引入和完善了类 应用了继承机制和动态连接 Smalltalk语言被看作是一种最纯粹的面向对象程序设计语言 但Smalltalk语言提出时 主流的程序设计方法是面向过程程序设计方法和结构化程序设计方法 Smalltalk语言仅在一些对面向对象程序设计方法感兴趣的研究人员中流行 并未获得商业上的成功 C C 是在C程序设计语言的基础上进行扩充 增加了相应的面向对象机制的强类型 混合型面向对象程序设计语言 由于C 既具有完备的面向对象机制 又保持了C的灵活高效和对C程序的兼容性 所以是目前使用最广泛的面向对象程序设计语言之一 JavaJava是由SunMicrosystems公司开发的一种弱类型的面向对象程序设计语言 Java编译器生成的是一种称为 字节码 的中间码文件 该文件的执行是由Java解释器和抽象机模型组成JVM JavaVirtualMachine 完成的 所以Java语言非常适合网络编程 实现程序的跨平台 跨介质运行的需要 但效率较低 C C 是由Microsoft公司近年来开发一种直接用于在Microsoft Net平台上更易于编译产生网络程序 字节码程序 的面向对象程序设计语言 该语言具有Java程序的跨介质运行机制 在一定程度上保持了C的风格和高效率 并融入了VB语言开发程序的友好性和方便性 但目前还不能实现跨平台运行 在Windows环境下支持C 的集成开发环境有 MicrosoftVisualC 6 0 VC6 BorlandC Builder6 0 BCB6 MicrosoftVisualC NET 1 封装性完好定义的类一旦建立 就可看成是完全封装的实体 可以作为一个整体单元使用 类的实际内部工作应当隐藏起来 使用完好定义的类之用户不需要知道类是如何工作的 只要知道如何使用它就行 指两个方面的含义 将有关的数据和操作代码封装在一个对象中 形成一个基本的单位 各个对象之间相对独立 互不干扰 对象中某些部分对外是隐蔽 这样有利于数据安全 面向对象程序设计的主要特性 2 继承性继承对于软件重用有着重要意义 是面向对象技术能够提高软件开发效率的重要原因之一 程序可以在扩展现有类 基类 的基础上声明新子类 派生类 继承机制允许派生类使用基类的数据和操作 同时派生类还可以增加新的操作和数据 继承性的优点减少源代码 即代码可重用 易于维护 体现自然界之间的关系 多态性多态性是指同一个消息被不
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 药品连锁采购管理制度
- 药库药品使用管理制度
- 药店基本药物管理制度
- 药店药品供应管理制度
- 薪资等级晋升管理制度
- 设备信息档案管理制度
- 设备大修计划管理制度
- 设备招标采购管理制度
- 设备润滑及其管理制度
- 设备维修安装管理制度
- 2025-2030中国显示驱动芯片行业竞争风险及前景发展创新研判报告
- 2024年昆明市公安局招聘勤务辅警真题
- 客房部内部管理制度
- 口腔实习生岗前培训课件
- 小学生数学学习习惯的培养讲座
- DeepSeek+AI大模型赋能制造业智能化供应链解决方案
- 自动生成的文档-202504081202-70
- 2025河南省豫地科技集团有限公司社会招聘169人笔试参考题库附带答案详解析集合
- 2025年河南省洛阳市中考一模历史试题(含答案)
- 2025年度专业技术人员继续教育公需科目考试题(附答案)
- 《陆上风电场工程概算定额》NBT 31010-2019
评论
0/150
提交评论