uml和软件建模

uml和软件建模

ID:21087771

大小:187.50 KB

页数:13页

时间:2018-10-19

uml和软件建模_第1页
uml和软件建模_第2页
uml和软件建模_第3页
uml和软件建模_第4页
uml和软件建模_第5页
资源描述:

《uml和软件建模》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、UML及软件建模主讲人:李唯clx7000@163.com第一章理解面向对象如何理解面向对象思维方式一些面向对象的概念对象如何与其他对象关联对象(object),无论是具体的还是抽象的,遍布于我们的周围,它们组成了整个世界。程序通常也要模拟现实世界中的对象。首先最重要的,对象是一个类(种类)的实例。例如你和我都是Person这个类的实例,那么其中,你和我就是对象,而Person则是一个类。对象是系统中用来描述客观事务的一个实体,具有自身的结构(Structure),也就是说,它具有属性(特性)和行为。对象的行为包括它所能执行的操作。

2、属性和操作合起来被称为特征。如何理解面向对象思维方式?对象只描述客观事物本质的、与系统目标有关的特征,而不考虑那些非本质的、与系统目标无关的特征。类(Class)是具有相同的属性和方法的一组对象的集合,它为属于该类的全部对象提供了统一的对象描述。同类对象具有相同的属性和方法,是指它们的定义形式相同,而不是说每个对象的属性值相同。让我们再会到洗衣机的例子。如果指定洗衣机类具有brandName﹑modelName﹑serialName﹑和capacity等属性,还有acceptClothes()﹑acceptDetergent()﹑t

3、urnOn()和turnoff()等操作的话,你就有了制造WashingMachina类新实例的机制。也就是说,可以基于洗衣机这个类创建新的对象。 记住面向对象的目标是开发出能够反映现实世界某个特定片段的软件(或者说是“建模”)。你考虑到的属性和行为越多,你所建立的模型就越符合实际。在洗衣机的例子中,如果你在洗衣机类中包括drumVolume(洗涤缸容量)﹑trap(水阀)﹑motor(马达)﹑motorSpeed(马达转速)等属性的话,洗衣机模型就更精确。在面向对象的世界里,类除了起到分类的作用外,类还是用来创建对象的模板。如可

4、以把类看成是加工小甜饼的模子,你可以用来压出新的小甜饼对象。一些面向对象的概念面向对象还包含对象的其它方面,这些方面包括抽象(abstraction)继承(inheritance)多态(polymorphism)封装(encapsulation)其他三种重要面向对象概念是消息传递(messagesending)关联(association)聚集(aggregation)抽象的意思就是过滤掉对象的一部分特性和操作直到只剩下你所需要的属性和操作。抽象是人类认识问题的最基本手段之一。在面向对象方法中的抽象,是指对具体的问题(对象)进行概括

5、,抽出一类对象的公共性质并加以描述的过程。例如你的洗衣机包括什么,不包括什么,在做出这样的决策后所保留的部分就是对洗衣机的抽象。一些权威人士认为抽象对于建模者来说是最重要的技术,也就是说要搞清楚什么应该纳入模型中,什么应该舍去。一般来讲,对一个问题的抽象应该包括两个方面:1、数据抽象:描述某类对象的属性或状态,也就是此类对象区别于彼类对象的特征。2、行为抽象(功能抽象):描述的是某类对象的共同行为或功能特征。抽象(abstraction)继承(inheritance)每个消费类电子产品的子类(手机﹑电视机﹑电子词典等等)都继承了消费

6、类电子产品的特征,在面向对象概念中,这种超类消费类电子产品与其子类的关系就是继承。注意每个子类都增加了自己的属性和操作。利用继承,子类可以继承父类的属性和方法,在一些文献里,往往把子类/父类称作特殊类/一般类、子类/超类、派生类/基类。继承增加了软件重用的机会,可以降低软件的开发和维护费用,而继承是OO技术和非OO技术的一个很明显的区别。利用继承可以开发更贴近现实的模型,使得模型更简洁。继承的另一个好处是可以保证类之间的一致性,父类可以为所有的子类定制规则。单继承和多继承单继承:子类只从一个父类继承多继承:子类只从一个父类继承交通工

7、具水上交通工具陆地交通工具水陆两用交通工具陆地交通工具水上交通工具单继承多继承多态性(polymorphism)有时不同的类具有相同名称的操作。在面向对象中,每个类都能够自己“知道”如何执行自己的打开操作,这就叫做多态性。在面向对象的世界里,多态是对人类思维方式的一种直接模拟,是指一个实体在不同的上下文条件下具有不同的意义或用法能力。例如你可以打开一扇门﹑打开一扇窗﹑打开报纸﹑打开一件礼物﹑打开银行帐号﹑甚至打开一段对话。封装(encapsulation)封装:把对象的属性和方法结合成一个独立的系统单位,并尽可能地隐藏对象的内部细节

8、。当一个对象执行自己的操作时,它对外界隐藏了操作的细节。封装使一个对象形成两个部分:接口部分和实现部分。对于用户来说,接口部分是可见的,而实现部分是不可见的封装提供了两种保护:首先,封装可以保护对象,防止用户直接存取对象的内部细节;其

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

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

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