- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
面 向 对 象 的 编 程Object Oriented Programming 王长军 什么是“对象”?? 什么是“对象”?? OOA+OOD+OOP+OOT+… 世界太复杂了,简单点好… 思考方法 归纳 从特殊到一般 从不同的 dogs 到词汇 “dog” 思考方法 演绎 从一般到特殊 从词汇“dog”,你可以区别出一个动物 是还是不是一条狗 面向对象 它是一种思考方法 世界上的任何东西都是一个对象; 任何系统都是由对象构成的 (当然系统也是一个对象); 系统的演化和开发就是通过系统内外的对象进行交互完成的 世界上的任何东西都是一个对象 花, 树, 动物 学生, 教授 桌子, 椅子, 教室, 建筑 大学, 城市, 国家 世界, 宇宙 学科,如计算机,信息系统,数学,历史 … 任何系统都是由对象构成的 法律系统 文化系统 教育系统 经济系统 信息系统 计算机系统 系统开发就是定义对象间的交互 东华大学是由下列对象的交互构成的: 学生 教师 职员 上海市政府 教育部 … ... 设计方法学 面向对象首先是一种设计方法学(OOA/OOD) 对象是程序的构成模块 (接口对象 (editor, menu, file, etc), 数据管理对象 (db), etc.). 对象代表了在应用中对现实世界的抽象. 设计方法学 面向对象支持 归纳: 对象 - 类 需要OOA/OOD工具. 演绎: 类-对象 编程者需要学习有关类库的知识 类和对象 类和对象 类和对象 类和对象 允许对类进行扩充—继承 将“继承” 进行到底--MFC 从结构化方法到面向对象的方法 从结构化方法到面向对象的方法 从结构化方法到面向对象的方法 面向对象的编程 在面向对象编程中,我们直接发送一个消息,而不是去调用一个程序来实现一个功能. 粗略地说,每一个对象实现了自己的模块 面向对象的编程 对象是由抽象数据类型来的 面向对象编程是对象交互的一个网络,每一个对象保存自己的状态 程序中的对象通过发送消息进行交互 面向对象的编程 每一个对象负责正确地初始化和销毁自身. 相应地,对对象而言,我们就不需要显式地创建和生成过程 面向对象的演化 模块 信息隐藏 数据封装 抽象数据类型 对象 记住 封装(Data Operations)--- 信息隐藏的技术——对象的用户不能看到对象的数据和操作的细节. 数据抽象 ---- 从对象中发现类的过程 抽象数据类型---- 类 面向对象编程语言就是能够很方便地支持面向对象概念的语言 Smalltalk:1972-1980. C++:1986. Java:1992 (Smalltalk + C++). 其它: Effile, Objective-C, Ada, ... Smalltalk 是一个纯的面向对象语言. 多数人认为Smalltalk 程序比 C++ 程序开发起来更快. 丰富的类库,通过继承实现重用 Smalltalk 拥有动态开发环境。它不是编译的,但是 C++ 是编译的. 这使得开发过程更可变,你可以方便地对类和各种情形进行修改 编程者并不能象在C++中那样立即掌握OO概念. 正因为如此,掌握Smalltalk需要更多地时间. 但是多数时间是花在学习面向对象方法学和技术上,而不是编程语言上的。实际上,Smalltalk 比C和C++更为简单. C++ 是 C的面向对象版本. 它与 C是一致的 (它实际上是C的超集), 所以现存的 C 代码能够包含在 C++ 程序中. C++ 程序速度快,效率高. 这些特性已经使C成为很流行的语言. 它牺牲了一些灵活性以提高效率. C++ 采用编译时绑定的方法。这使得程序运行时的效率很高,代码也较小,但是它影响了重用类的某些能力. C++ C++ 已经非常流行,绝大多数新的 C 编译器实际上是 C/C++ 编译器. 但是,如果想进行面向对象编程,你必须用C++编程(思考),而不是C. 这些都将对有经验的C编程者带来挑战。他们认为他们是在运用C++编程,但实际上只用了很少的面向对象特点。 C++ C++ 是一个优秀的语言. 利用它, 你可以编出世界上最好的程序! C++ 是一个差的语言. 使用它,你也可能编出世界上最差的程序 所以,在学习和使用它时,注意它的OO特性和非OO特性。 Java是 C++ 和Smalltalk古怪的混合. 它具有 C++的语法, 使它容易学习(也许是难以学习,这依赖于学习者的经验). 它具有Smalltalk的结构, 如虚拟机和字节码. C++的改进: 取消指针 垃圾回收 运行在类似于 Smalltalk-风格的虚拟机上 只要具有虚拟机,不同的机器上都可
您可能关注的文档
最近下载
- 西安安东东风风机机电股份有限公司数字型质量流量变送器DPT100用户手册.pdf
- 干燥综合征的护理.ppt VIP
- ZHJ3100介质损耗说明书20161010.doc VIP
- 26-局长办公会会议制度.doc VIP
- 百合花(语文).PPT VIP
- 急诊科护理实践及热点问题探讨题库答案-2025年华医网继续教育答案.docx VIP
- 二工区旋挖钻试桩方案.doc VIP
- 10.1 养成遵纪守法好习惯—增强遵纪守法意识 课件 中职思想政治高教版职业道德与法治.ppt
- 2025年运动与减脂塑形北京师范大学章节及期末答案.docx VIP
- 部编版一年级上册语文期中考试试卷(附答案).doc VIP
原创力文档


文档评论(0)