- 热门文章:
- · 第一章 UML模型的基本概念
- · 用Uml画蓝图
- · 用UML画草图
- · UML一统天下 ——统一的不是建模过程而是建模…
- · 统一建模语言UML概述(二)
- · 敏捷开发者发现新西兰人干得更好
- · UML要点与应用
- · 用UML进行W3C XML Schema设计
- · OMG下周表决UML2.0新规范
- · 使用模式集成UML视图
- · 用Uml做为编程语言
- · UML建模工具比较
第二章 Hello World
记得在学习C语言的时候,教科书上的第一个程序就是叫Hello world,一个在屏幕上简单地打印出“Hello world!”语句的例子。在系统的学习UML语言之前我们来看一个简单的例子,让大家有一个系统的认识。
在java中一个在浏览器中显示“Hello World!”的Applet代码如下:
import java.awt.Graphics;
class HelloWorld extends java.applet.Applet{
public void paint( Graphics g ){
g.drawString("Hello World!", 10,10 );
}
}
代码的第一行:
import java.awt.Graphics;
使得程序可以使用Graphics类。前缀 java.awt指出了类Graphics所在的包。
第二行代码:
class HelloWorld extends java.applet.Applet{
从Applet类派生出新的类HelloWorld,Applet类在java.applet包中。
接下来的三行代码:
public void paint( Graphics g ){
g.drawString("Hello World!", 10,10 );
}
声明了类HelloWorld的方法paint,在他的实现中调用了另一个方法drawString来输出“Hello World!”。
我们可以很直接地为这个程序用UML建立模型。如图2-1。
图 2-1 HelloWorld
图2-1表达了最基本的HelloWorld模型,但它还有很多东西没有表示出来。在我们的程序中Applet类和Graphics类的使用是不相同的。Applet用作HelloWorld类的父类,而Graphics类用在方法paint的实现中。在UML模型中可以将这些关系表示为图2-2:
图2-2 HelloWorld的类图
在图2-2的类关系图中,我们用简单的矩行图标表示类Applet和Graphics类,没有将它们的属性和方法显露出来是为了简化。图中的空心箭头表示HelloWorld类是Applet类的子类,代表一般化。HelloWorld和Graphics之间的虚线箭头表示依赖关系,表示HelloWorld类使用了Graphics类。
到这里或许你认为已结束了,其实不然,如果认真研究java库中的Applet类和Graphics类会发现他们都是一个庞大的继承关系中的一部分。追踪Applet的实现可以得到另外一个类图,如图2-3所示:
图2-3 HelloWorld继承图
- · 图论思想与UML应用(下)
- · 建模动力:UML2.0使模型驱动的开发更加容易
- · 使用 UML 为 Web 应用程序构架建模
- · Visio 的数据库建模:第三部分
- · 基于 Visio 的数据库建模:第一部分
- · 统一建模语言在大坝安全辅助决策系统中的应用
- · EA与Rose UML建模工具比较
- · Together for .NET建模入门
- · 基于UML柔性开发模型之Java设计
- · UML建模工具比较
- · 用UML统一开发团队
- · 建模动力
- · 基于ROSE的Web Service建模
- · UML中文教材
- · 驳“UML三大硬伤”
- · 复杂系统的层级原理与模型驱动软件体系结构
- · UML建模风格之顺序图
- · UML建模风格之状态图
- · UML三大硬伤
- · 使用模式集成UML视图
- · UML数据库建模讲义
- · Java开发为什么需要UML
- · 从Java类库看设计模式(Composite,Strategy,It…
- · UML的现状及未来发展
- · 建模的误区
- · 使用 UML 为 Web 应用程序构架建模
- · 关于Alexa工具条的解说与方法
- · Alexa排名数据更新时间研究
- · 如何正确看待ALEXA
- · 辩证地看Alexa:阿里巴巴是怎么做上"老大"的?
- · 瑞星中了Alexa排名病毒
- · 从Alexa网站排名,看IT门户走势
- · 搜狐的所谓“作弊”,正是源于Alexa的Reach权…
- · 我和一个Alexa排名推销员的聊天
- · Alexa作弊的相关问答
- · 详细查看Alexa近7天曲线的方法
- · 如何正确看待ALEXA排名
- · Alexa 世界网站排名研究
