- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
程序的设计基础第10章
第10章 面向对象程序设计基本概念 讲授内容 面向对象程序设计方法的产生和发展 面向对象程序设计语言 面向对象程序设计的特点 类、对象、消息等概念 10.1 面向对象语言和方法(1/6) 六十年代末期——Simula 67(面向对象语言的鼻祖) 包含了类和继承的概念 类——描述特性相同或相近的一组对象的结构和行为 继承——将多个类组织成层次结构,实现数据和操作的共享 10.1 面向对象语言和方法(2/6) 七十年代末八十年代初——Smalltalk(第一个真正的集成开发环境) 包含类和继承,更严格的信息隐藏 带有一个标准类库 第一个使用MVC(Model-View-Controller)模型开发交互式应用软件 10.1 面向对象语言和方法(3/6) Smalltalk使面向对象方法为人们注目 面向对象语言被分为两大阵营 纯粹的面向对象语言:Smalltalk、Eiffel、Java 混合型面向对象语言:C++和CLOS 基于对象的语言:Ada支持抽象数据类型(包)、函数和运算符重载、多态性,但不支持继承 10.1 面向对象语言和方法(4/6) 结构化程序设计 将问题进行功能分解(函数) 面向对象方法 将问题分解为一系列的实体(对象) 可维护性、可扩充性好 10.1 面向对象语言和方法(5/6) 简单的例子——图书馆管理系统 包含reader(读者)对象、librarian(图书管理员)对象、bookshelf(书架)对象等 所有的操作由各对象协作完成 借书 reader对象向librarian对象提出借书请求 librarian对象向bookshelf对象提出查书和取书请求 然后逐步响应,逐步返回,共同完成借书操作 10.1 面向对象语言和方法(6/6) 面向对象方法的一些特性 程序设计的重点是数据而不是函数 程序由对象组成 对象之间通过相互协作来完成功能 对象的定义以数据为中心 函数与相关的数据紧密结合 数据可以被隐藏 很容易扩充新的数据和函数 10.2 类、对象和消息(1/10) 面向对象程序设计的一般步骤 分析实际问题,分辨并抽取其中的类和对象 设计相应的类,并根据这些类创建各种对象 协调这些对象完成程序功能(消息) 10.2 类、对象和消息(2/10) 对象 每个学生、每个班级、每个学校、每个国家、每棵树、每本书、每部汽车——具体的实体 “张三”、“李四”都是对象,但“人”不是 “人”不是具体的实体,是类,是抽象概念 类是某些对象共同特征的表示 类是创建对象的模板,对象是类的实例 10.2 类、对象和消息(3/10) 如何区分类和对象——以“人”和“张三”为例 “人”描述了所有人(包括“张三” )都具有的属性和行为,如有姓名、身高、体重,有鼻子、眼睛、四肢,能交流、能思维等等 类(“人”)描述的概念是抽象的 “人”的姓名是什么? “人”的身高是什么? 对象(“张三”)是具体的 “张三”的姓名是“张三” “张三”的身高是185CM 10.2 类、对象和消息(4/10) 还有哪些类和对象的例子 教室——401-201教室 国家——中国 学校——国防科技大学 …… 例子:读者类Reader class Reader {public: Reader( ); //构造函数 int registration(char *name); //注册 int borrowBook(int bookNo); //借书 int returnBook(int bookNo); //还书 private: char *name; //姓名 char *certifNo; //借书证号 }; 10.2 类、对象和消息(5/10) 格式说明 类的定义以关键字class开头 class后面是类名(Reader) 类名后面花括号扩起来的部分是类的体 类的定义以分号结尾 10.2 类、对象和消息(6/10) 内容说明 类的定义可以包含数据和函数 关键字public后面定义了类的公有成员 类Reader有四个公有成员函数:Reader、registration(注册)、borrowBook(借书)和returnBook(还书) 关键字private后面定义的是类的私有成员 类Reader包含两个私有数据成员,姓名(name)和借书证号(certifNo) 数据成员和成员函数都可以是私有的或公有的 10.2 类、对象和消息(7/10) 自定义类是一种新的自定义类型,可以声明变量(对象)、指针、数组等 对象各自拥有自己的数据空间,互不干扰 Reader zhang;//声明Reader类的对象zhang Reader reader[1000];//声明Reader类的数组 R
您可能关注的文档
最近下载
- 2025金华义乌市机关事业单位编外招聘7人笔试备考试题及参考答案详解一套.docx VIP
- 辽宁省名校联盟2024-2025学年高一上学期12月联合考试英语试卷(含答案).docx VIP
- 应急类建筑工程建设管理分析.docx VIP
- 2025至2030中国装配式建筑行业市场深度调研及发展趋势与行业市场深度研究与战略咨询分析报告.docx
- 四川拟任县处级党政领导职务政治理论水平任职资格考试模拟题第一套.pdf VIP
- 项目技术管理标准化手册.docx VIP
- 离线论文关于科学思维方法在实际生活和工作中的应用、意义.pptx VIP
- 铁道车辆机械装置检修 货车弹簧减振装置 钢制弹簧.pptx VIP
- 2025金华东阳市部分机关事业单位编外招聘83人(一)笔试备考题库及参考答案详解一套.docx VIP
- (高清版)C-J∕T 189-2007 钢丝网骨架塑料(聚乙烯)复合管材及管件.pdf VIP
原创力文档


文档评论(0)