2008-08-12

基本的UML类图读法

  虽然我不干软工,但是基本的UML图还是应该要能读懂的。这里推荐一个软件:dia。相当好用,不仅是uml图,各种流程图啦。网络的拓扑图啦都能轻松画出来。
  以下是基本的UML类图的规则。


  在UML类图中,每个类用一个矩形表示,其中由三部分组成:类名,属性和操作比如我这个

  这里可以看到相当多的箭头和两种类视图,由于这个UML图用于表示这几个主要的类之间的关系,所以除了包含main方法的类之外,其他所有类都省略了属性和方法。
  注意PaintBox类,你可以看到void在类名的背后,用一个冒号隔开了,这个就是UML图的规则。至于那个方法名前面的加号表示是public可见性的方法。减号当然也就是private属性的了。至于protect就是一个#号了。
  图中的由一个空心菱形加一条实线组成的有向线段表示的是有空心菱形的一端是个聚合类(就是一种has-a的关系,比如汽车是由很多其他部件聚合而成的,一个聚合对象就是将其他对象的引用作为自己的实例数据的对象),所以这里那个PaintFrame是 DrawPanel,ButtonBar,JMenuBar的聚合类。
  至于那个虚线箭头表示的是类关系,比如图中就显示了PaintBox类使用了PaintFrame类的类方法。
  空心三角形加直线表示继承关系,是从子类指向父类。
  继承关系可以出现多继承和兄弟类,不过由于Java不支持多继承,所以就不贴了。

没有评论: