基础教程.ppt

  1. 1、本文档共58页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
* * * * * * * * * * * * * * * * * * * * * 附录 UML全部图的关系 用例图 用例文档 用例图 用例文档 对象图 状态图 构件图 类图 活动图 部署图 活动图 部署图 对象图 类图 状态图 协作图 顺序图 协作图 顺序图 活动图 部署图 需求分析 BD FD/DD 全部图之间的关系 * * * * * * * * * * * * * * * * * * * * * * * * * 3. 类图 UML表示法 角色 类的角色是“事物“ 多重性 (用数字和*表示) 1…*:1个或多个 1个类图有1个或多个类 1个类属于1个或多个类图 方向 双向关联(省略箭头) 名字 关系的名字是“使用” 实例 聚合关系 特殊关联关系,指明一个聚集(整体)和组成部分之间的关系 组合关系 语义更强的聚合,部分和整体具有相同的生命周期 UML表示法 UML表示法 (空心菱形) 实例 类图包含有事物和关系,类图不存在了,事物和关系还可用于其它的类图 (实心菱形) 实例 类与关联关系之间有组合关系,类不存在了,则相应的关联关系也不存在 3.3 类图中的关系及解释 3.3.1 关联关系 描述了类的结构之间的关系。具有方向、名字、角色和多重性等信息。一般的关 联关系语义较弱。也有两种语义较强,分别是聚合与组合 3. 类图 UML表示法 3.3.3 实现关系 对应于类和接口之间的关系 UML表示法 类Circle、Rectangle实现了接口Shape的操作 关联、泛化、实现、依赖都是一种关系 类、接口都是一种事物 3.3.2 泛化关系 在面向对象中一般称为继承关系,存在于父类与子类、父接口与子接口之间 3.3.4 依赖关系 描述了一个类的变化对依赖于它的类产生影响的情况。有多种表现形式, 例如绑定(bind)、友元(friend)等 UML表示法 模板类StackT定义了栈相关的操作;IntStack将参数T与实际类型int绑定,使得所有操作都针对int类型的数据 类Memento和类Originator建立了友元依赖关系,以便Originator使用Memento的私有变量state 3. 类图 C++代码 class Vehicle { public: virtual int Start() = 0; virtual int Stop() = 0; virtual int Run(float fSpeed) = 0; private: float fMaxSpeed; }; Java代码 public abstract class Vehicle { public abstract int Start(); public abstract int Stop(); public abstract int Run(float fSpeed); private float fMaxSpeed; } 3.4 类图与代码的映射 3.4.1 类的映射 3. 类图 3.4.2 关联关系的映射 C++代码 class Dialog { private: Button btnOK; Button btnCancel; TextBox txtInfo; }; class Button {}; class TextBox {}; 组合关系,代码表现为Dialog的属性有Button和TextBox的对象 3.4.3 泛化关系的映射 Java代码 public class SavingsAccount extends Account { } C++代码 class SavingsAccount : public Account { }; 3. 类图 C++代码 class Shape { public: virtual void Draw() = 0; }; class Circle : public Shape { public: void Draw(); private; Point ptCenter; int nRadius; }; Java代码 public interface Shape { public abstract void Draw(); } public class Circle implements Shape { public void Draw(); private Point ptCenter; private int nRadius; } 在C++语言里面,使用抽象类代替接口,使用泛化关系代替实现关系 在Java语言里面,有相应的关键字interface、implements 3.4.4 实现关系的映射

文档评论(0)

精品资源 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档