文档详情

面向对象的分析与设计课件.pptx

发布:2023-10-21约4.57千字共44页下载文档
文本预览下载声明
面向对象的分析与设计对象 (object)我们可以把生活所在的真实世界(Real World)当作是由许多大小不同的对象所组成的。对象可以是有生命的个体,比如一个人或一只鸟。对象 对象也可以是无生命的个体,比如一辆汽车或一台计算机。 对象也可以是一件抽象的概念,如天气的变化或鼠标所产生的事件。 对象的特征 对象有两个特征:属性和行为例如: 人有他的身高或体重作属性,有他的行为——如唱歌、打球、骑摩托车、开汽车。 狗有它的颜色作属性,有它的行为,如吠叫或跳跃。 电视机有它的外形、尺寸和颜色,有它的行为,如开、关,接收信号,转换频道,调节音量。颜色排档数换档煞车排气量轮胎型号开大灯开冷气汽车对象 以汽车为例,我们可定义其属性与方法如: 案例研究 本教程 中使用下面的示例来应用面向对象的分析与设计原理。公司名称:DirectClothing公司按月生成目录客户可以打电话、使用邮寄和传真必须每个检查订购项的存货水平DirectClothing接受支票和信用卡面向对象概述 系统建模技术尝试描述一个系统在现实生活中的情形定义系统的:对象——让对象工作的问题对象属性——对象的特征对象操作——所能执行的任务对象: 确定对象 找出问题描述领域中的主要名词对象可能是:简单的或复杂的(衬衣,银行)真实的或概念的(银行出纳员,帐户)对象有:属性(颜色,尺寸 )操作(下订单,取消订单)确定对象属性和操作 属性:是对象的特征可以是数据或对象对Order对象来说,可能包括orderID和items操作:是对象执行的动作可以是对象做出的或施加给对象的动作对Order对象来说,可能是place和cancel建模对象 属性类型 测试对象 与问题域的相关性对象是否在问题陈述的界限之内?系统是否必须有此对象才能完成任务?在用户与系统的交互中是否必须有此对象?独立存在性属性和操作分析问题域实验目标:找出问题域中的对象,及其属性和操作步骤:1、列出有关的对象(名词) 2、列出这些对象的属性和操作 3、为对象设置合理的属性和操作 4、应用上述的3条评判规则检验对 象的有效性练习 An object-oriented design for a Java application that tracks soccer scores.The program should track:The number of goals each player scores in each gameWhat teams the players play for and what season the games were play in 动物类汽车类类(class)在真实世界里,有许多同“种类”的对象。而这些同“种类”的对象可被归类为一个“类”。例如我们可将世界上所有的汽车归类为汽车类,所有的动物归为动物类。 什么是类? 是同种对象的集合与抽象类与对象的关系 类? 对象 抽象定义 实例 电视机 ? 一台长虹电视机 学生 ? 学生王强 类与对象 如果将对象比作汽车,那么类就是汽车的设计图纸。所以面向对象程序设计的重点是类的设计,而不是对象的设计。 实例 (instance)汽车类(class)NEW实例(instance)你的车汽车类有些共同的状态(汽缸排气量,排档数,颜色,轮胎数……)和行为(换档,开灯,开冷气……),但每一台汽车个别的状态及方法可不同于且独立于其他汽车 。你的汽车只是这世界中许多汽车中的一个。我们就称你的汽车对象是汽车类中的一个实例(instance)。 OO的真正意义 OO的真正意义是使得软件开发接近人类的正常思维,将许多原来由人完成的工作交给机器去完成: -机器语言 汇编语言 高级语言 -面向过程 面向模块面向对象 OO包括一套比较完整的方法,程序设计只是其中一个环节。 -面向对象的分析 -面向对象的设计 -面向对象的程序设计 -代码重用过程式程序设计OOP程序设计消息函数函数函数函数方法方法方法方法属性数据属性数据面向对象与面向过程公共数据算法+数据结构对象+消息面向过程面向对象OOP三大特性:封装、继承与多态 封装(encapsulation ) 封装是一种信息隐藏技术。是指利用抽象数据类型将数据和基于数据的操作封装在一起,数据被保护在抽象数据类型的内部,系统的其他部分只有通过在数据外面的被授权的操作才能够与这个抽象数据类型进行交互。在面向对象的编程中,用类来封装相关的数据和 方法,保证了数据的安全和系统的严密性。考虑一个仓库,外部只能通过管理员获取物品。价格表,物品, 账单,电话, 等等 仓库属性抽象提供物品,账单等等操作封装的优点隐藏类的实现细节,实现了信息的隐藏及安全性;提高了程序的模块化,且易于维护;具体实现是编写
显示全部
相似文档