<java与模式> ---电子书
第2.4部分 UML page16
理解: 类图
一、描述类的类图
一般如果类不包含内部类,则可以将类图分为四层。
1、第一层描述的是类的名字,如果为斜体则该类为抽象类。
2、第二层描述的是类的属性,规则是:[+|-|#]classname<变量名>如果有下划线则表示其为静态的。+表示为public、—表示为private、#表示为protected。
3、第三层描述的是类的方法,规则是:[+|-|#]funcationname<变量名>如果有下划
则表示其为静态的。
4、第四层表示的是类的性质,也就是类的属性,不过一旦有该属性,类就要实现方法,set和get方法。
接口类的类图和类的类图几乎一样。
问题:该类中包含有内部类的有是如何分层的呢?
二、描述对象的类图
他们的关系会发生在类和类、类和接口、接口和接口之间。
类图的关系可以分为:一般关系、关联关系、聚合关系、合成关系、依赖关系。
1、一般关系表现在类或则接口之间的继承关系。
2、关联关系是指他用另一个类的实例作为其属性,而聚合关系基本上也是这个意思不过聚合主要体现的是总体和四肢的关系,如:类的属性是用一个对象数组实现的,那么该类就和实现这个属性数组的类是一个聚合关系。
3、合成关系要比聚合关系要强,他在每一个时刻只能够和一个对象发生合成关系,他不能够共享。
4、依赖关系是在一个的方法中引用了一个类的对象作为是参数,或是引用了一个类的对象作为局部变量或引用类的静态方法或属性。
问题:合成关系中的共享,到底什么不能够共享?怎么理解这个不能够共享?合成关系很难理解,“他在每一个时刻只能够和一个对象发生合成关系”这句话与关联关系中不就一样了吗?也就是说,当我们直接用一个类A来声明一个对象作为一个类B的属性,那么我们就可以说这个类A关联类B,那也可以说类A合成类B吗?
第十二章 简单工厂模式
“开—闭”原则要求一个系统的设计准许在系统不需要修改的情况下扩展其功能。
理解:简单工厂模型简单说就是:抽象产品——>具体产品<-----------工厂类
在特殊的情况下,也就是当只有一个具体产品的时候,我们可以将其中抽象产品不要,但是这种用法看上去不是很多。一个更为特殊的用法是将抽象产品和工厂类合并.
posted on 2005-07-30 20:15
sky 阅读(183)
评论(0) 编辑 收藏