- 1、本文档共14页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
StarUML指导手册1综述StarUML是一种生成类图和其他类型的.doc
StarUML指导手册
1.?? 综述:
StarUML(简称SU),是一种创建UML类图,并能够自动生成Java的“stub code” 的工具。SU也可以做JAVA逆向工程,以产生相应的UML图表。
在本教程中,我们将使用SU设计一个pizza饼。执行下列步骤,可以创建如下面所示的UML图。SU可以生成反映类结构的代码,而不是任何对象的具体行动。因此,在使用SU创建图表后,你会为此stub code添加剩余的功能性代码,填写每种方法本来应该做的事。
2.?? 安装:
GPL协议许可(GNU公共许可证) ,并免费提供下载。
3.?? 启动
4.?? 添加新工程
5.?? 选择模块
Model Explorer”框中选定“Untitled”模块。
6.?? 添加模块
7.?? 添加类图
?
8.?? 设置profile
9.?? 保存工程
从“File ”菜单,选择“Save” ,并选择一个地方以保存工程。你的StarUML项目现在应该看起来的是这样的:
10.????????? 创造图表
11.????????? 添加属性
???????????? 具体的数据类型,在属性面板(右下侧的窗口) ,由双打字,在类型时段。 在窗体右下边的Properties面板中,找到“Type”输入框,输入double作为_radius属性的类型。
???????????? 类的内部数据(域/属性)都是私有的,因为他们是严格由类内部使用的。所以,在Properties面板中将_radius设置为“私有”。
12.????????? 继续进行设计
13.????????? 创造 IShape interface
????????????
???????????? 在顶部工具栏,选择 “Stereotype Display” 下拉按钮,将值改变为“None”。这将改变以往的圆形形状,使其变为成长方形。
???????????? 还是在顶部工具栏,取消选中 Suppress Operations 。这将使我们能够看到接口所拥有的方法。
???????????? 向IShape 接口添加返回值为double的getArea方法。
?????? 可以通过右击interface的图标,在弹出菜单中点击红色的“Operation”按钮,然后输入getArea。
?????? 设定返回值类型。在“Model Explorer”中展开IShape节点,右击你刚刚创建的getArea方法,并选择“Add Parameter”。在“Properties”框中,将参数的名子变为空,将“DirectionKind”变为“RETURN”,将“Type”变为dboule。
???????????? 将IShape和getArea的IsAbstract属性框打上勾,他们在图标上的名字将变为斜体。这是UML的标准,表示这是接口或者其他纯虚实体。
14.????????? 添加类和接口的关系
????????????
?????? 如果想使连接线表现为直角的方式,右击连接线,并选择 Format/Line Style/Rectilinear菜单。你通过这种方式,使箭头重叠在一起,可以使你的图看起来更整洁。
15.????????? 添加类基于接口的行为
????????
???????? 在“Model Explorer”面板中,复制getArea法(按Ctrl-C或者右键点击并选择Copy菜单),并粘贴到Circle和Rectangle类。
???????? 这些实现了的方法在Circle和Rectangle类中都不是抽象的,而是具体的。这是因为他们实际上是执行一些特定行为(例如,为一个圆形和长方形分别计算面积) ,所以不要勾选IsAbstract框。
16.????????? 你的图现在应该是这样的:
17.????????? 添加Pizza类
????????
???????? 添加返回double类型的共有操作getPrice。
18.????????? 为Pizza类添加IShape 的引用
????????
???????? 选中箭头,在右边的“Properties”框上,将name一栏改为“has-a”,“End1.Aggregation” 一栏改为“AGGREGATE”(这个图示说明Pizza和shape对象是“聚合“的关系)。
???????? 将“End2.Name”一栏改为_shape 。这样就自动为Pizza添加一个名字为_shape,使用IShape接口的私有域,的所谓_shape型ishape以pizza饼。
???????? 将“End2.Visibility”改为私有。
???????? 为_shape创
文档评论(0)