2_面向对象程序设计概念

2_面向对象程序设计概念

ID:34570896

大小:687.01 KB

页数:40页

时间:2019-03-08

2_面向对象程序设计概念_第1页
2_面向对象程序设计概念_第2页
2_面向对象程序设计概念_第3页
2_面向对象程序设计概念_第4页
2_面向对象程序设计概念_第5页
资源描述:

《2_面向对象程序设计概念》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、面向对象程序设计概念孙聪课程内容•Java概述•异常处理•面向对象程序设计概念•I/O•Java语言基础•线程•Java面向对象特性•GUI程序设计•Java高级特征•Java网络程序设计•常用预定义类的使用•高级专题•“我们之所以将自然界分解、组织成各种概念,并按其含义分类,主要是因为我们是整个口语交流社会共同遵守的协定的参与者,这个协定以语言的形式固定下来……除非赞成这个协定中规定的有关语言信息的组织和分类,否者我们根本无法交谈”——BenjaminLeeWhorf(1897-1941)•为什么程序难写?–解空间vs.问题空间–解决问题

2、时,基于:计算机的结构vs.目标问题的结构面向对象程序设计(OOP)•OOPisaprogrammingparadigmusing"objects"–datastructuresconsistingofdatafieldsandmethodstogetherwiththeirinteractions–todesignapplicationsandcomputerprograms.(fromWikipedia)•面向对象程序设计是使用“对象”设计程序的编程范式•对象是由数据字段、方法及其间的交互组成的数据结构•允许根据问题来描述问题,而不是根

3、据运行解决方案的计算机来描述问题面向对象程序设计的发展•60年代后期Simula_67语言采用类(Class)的概念•70年代AlanKay研制了Smalltalk,并于1980年首度对外发布,标志着OOP思想的确立•80年代初,B.Stroustrup发明了C++•80年代末到90年代初开始流行•90年代中期J.Gosling研制了Java,一种面向对象的高效编程语言面向对象程序设计的特征•AlanKay的OOP五大原则:–一切皆对象–程序是一系列对象的组合,对象间通过消息传递进行联系–每个对象都有自身内存空间,可容纳其他对象–每个对象都

4、有一种类型–同一类型的所有对象都能够接收相同的消息•面向对象方法的核心概念:对象、类、封装、继承和多态•面向对象方法的基本工作:划分和定义对象•抽象•对象•类•封装•继承•多态•抽象•对象•类•封装•继承•多态抽象•什么是抽象?–抽象是一种设计技术,用以说明一个实体的本质方面,而忽略或掩盖其非本质方面–抽象是一种工具,用来将复杂现象简化到可以分析、实验或者可以理解的程度抽象•抽象的作用–简化:识别重要细节,忽略无关细节–过滤问题空间中模型的无关侧面抽象•抽象是软件开发的基础–软件抽象相关于对给定实体的建模–单个实体可能有多种抽象,但OOP过

5、程需要确定将哪些属性和行为包括在给定的抽象中•对象如何与类联系–通过在抽象基础上对抽象结果的组织来联系抽象•抽象•对象•类•封装•继承•多态对象•对象是由变量和相关方法组成的软件体•对象是现实世界实体或概念在计算机世界中的抽象表示–对象=状态+行为(Booch:+标识)–对象=数据+操作–对象=属性+服务–……•对象的结构–状态:变量值–行为:设置或改变对象的状态对象•状态与行为之间的关系–对内:只有方法能操作变量–对外:方法是对象与外部环境(对象)交互、通信的接口对象•状态与行为之间的关系–对内:只有方法能操作变量–对外:方法是对象与外部

6、环境(对象)交互、通信的接口•对象之间通过发送消息进行交互与通信对象•对象之间通过发送消息进行交互与通信–消息•由发送者对象编写•由接收者对象解释•由对象方法实现–消息可以•引起接收者状态变化•返回结果对象•对象之间通过发送消息进行交互与通信–消息的组成:•接收消息的对象•方法名称•方法的参数–消息示例对象•如何产生有用的对象–必须有某种方式产生对对象的请求完成交易在屏幕上画图打开开关……–每个对象都只能满足某些请求——这些请求由对象的接口(interface)所定义对象•接口确定了对某一特定对象所能发出的请求,或某一对象接收消息的

7、方式–对象如何与类联系:通过在抽象基础上对抽象结果的组织来联系–接口是“组织”的依据之一对象•对象是具有唯一对象名、固定对外接口的一组变量/属性和方法的集合,用来模拟组成或影响现实世界问题的一个或一组因素–对象名——对象区别于其他对象的标志–对象接口——对象与外界通信的通道–变量/属性——对象所处的状态–对象操作——实现对象的特定行为并改变对象状态•抽象•对象•类•封装•继承•多态类•Aclassisablueprint,orprototype,thatdefinesthevariablesandthemethodscommontoallo

8、bjectsofacertainkind.•一个类是一个蓝图或样板,它定义了某一特定类的所有对象都具有的变量与方法类•类的结构类•类示例(自行车)类•类中的变量与方法–变量•实例

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。