- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
面向对象是软件方法学的反朴归真另一方面,人类在认识世界的历史长河中形成的普遍有效的思维方法,在软件开发中也应该是适应的。人们在日常生活中习惯的思维方式和表达方式,也应在软件开发中尽量采用,这就是面向对象方法所强调动基本原则。软件开发从过分专业化的方法、规则和技巧回答了客观世界,回到了人们的日常思维,所以说面向对象方法是软件开发理论的返朴归真。第30页,共60页,星期日,2025年,2月5日面向对象是软件方法学的反朴归真从不同的方法学出发来认识事物都可得到一些言之有理的结论,但却存在着难易之分、繁简之分、深浅之分和优劣之分。例如中国道家的阴阳五行学说曾被用来解释物质的构成和转化,但现代化学的解释就更为透彻,更为明了。又如日心说诞生之前,欧洲的天文学家以地球为中心计算行星的运行轨道,于是大圈套小圈,公式十分复杂。日心说的创立一下使问题变得简单了-只不过是围绕太阳的一个椭圆。第31页,共60页,星期日,2025年,2月5日面向对象是软件方法学的反朴归真这两个例子,说明认识论对于实践的影响,从哲学上,面向对象方法与唯物主义认识论中的物质第一性、意识第二性以及存在决定意识到观点是十分符合的。当软件专家们面向自己专业领域中的这个概念、那个概念而苦苦探索的时候,面向对象方法呼吁他们转过身来,面向客观世界,面向客观世界中的对象!这就是面向对象。第32页,共60页,星期日,2025年,2月5日面向对象方法学的基本概念对象-属性、服务类-抽象、一般类、特殊类封装-信息隐蔽、可见性继承消息结构与连接-一般/特殊结构、整体/部分结构、实例连接、消息连接多态第33页,共60页,星期日,2025年,2月5日对象(object)关键字:对象(object)、属性(attribute)、服务(service)定义:对象是系统中用来描述客观事物的一个实体,它是构成系统的一个基本单位。一个对象由一组属性和对这些属性进行操作的一组服务构成。定义:属性是用来描述对象静态特征的一个数据项。定义:服务是用来描述对象动态特征的一个操作序列。第34页,共60页,星期日,2025年,2月5日对象(object)举例:一名职工,一家公司,一个窗口,一座图书馆,一本图书,贷款、借款注意: 抽象性-对象只描述客观事物本质的、与系统目标有关的特征,而不考虑那些和系统目标无关的特征 完备性-对象是属性和服务的结合体,两者是不可分的。对象是自包含的。这是和面向功能所不同。 封装性-对象好像是一个黑盒子。外界不能直接访问对象的私有属性,一切操作只能通过对象的服务实现。第35页,共60页,星期日,2025年,2月5日类(class)关键字:类(class),一般类(generalclass),特殊类(specialclass),抽象(abstraction)定义:类是具有相同属性和服务的一组对象的集合,它为属于该类的全部对象提供了统一的抽象描述,其内部包括属性和服务两个主要部分。第36页,共60页,星期日,2025年,2月5日类(class)注意:类的作用是定义对象。程序中给出一个类的说明,就可以由类生成它的对象实例。类与对象的关系如同一个模具与用这个模具铸造出来的铸件之间的关系。在程序中,每个对象需要有自己的存储空间,以保存它们自己的属性值。我们说同类对象具有相同的属性与服务,是指它们的定义形式相同,而不是说每个对象的属性值都相同。第37页,共60页,星期日,2025年,2月5日类(class)另外,我们常说,事物之间就有共性、也有特性,概念既有一般概念,也有特殊概念,面向对象技术要能做到在软件中再现现实世界,就必须能够表达这种关系。确实可以。这通过一般类和特殊类来实现。一般类和特殊类是相对而言的,它们之间是一种真包含的关系(即:特殊类是一般类的一个真子集)。如果两个类之间没有这种关系,就谈不上一般和特殊。特殊类具有它的一般类的全部特征,同时又具有一些只适应于本类对象的独特特征。第38页,共60页,星期日,2025年,2月5日类(class)定义:如果类A具有类B的全部属性和全部服务,而且具有自己特有的某些属性或服务,则A叫做B的特殊类,B叫做A的一般类。举例:考虑轮船和客轮这两个类。轮船具有吨位、时速、吃水线等属性并具有行驶、停泊等服务;客轮具有轮船的全部属性与服务,又有自己的特殊属性(如载客量)和服务(如供餐)。所以客轮是轮船的特殊类,轮船是客轮的一般类。与一般类/特殊类等价的其它术语有超类/子类、基类/派生类、父类/子类等。第39页,共60页,星期日,2025年,2月5日封装(encapsulation)关键词:封装(encapsulation),信息隐
文档评论(0)