设计模式
设计模式分为创建型模式、结构型模式和行为型模式。
创建型模式:创建对象。
结构型模式:把复杂结构分解为多个类,分解的是类本身(包括算法和属性)。
行为型模式:把复杂算法分解到多个类,分解的是算法。
UML
示例代码:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45
| public interface Aggregate { Iterator createIterator(); }
public interface Iterator { boolean hasNext(); Object next(); }
public class ConcreteAggregate implements Aggregate { private Object[] objects;
public ConcreteAggregate(Object[] objects) { this.objects = objects; }
@Override public Iterator createIterator() { return new ConcreteIterator(); }
private class ConcreteIterator implements Iterator { private int index = 0;
@Override public boolean hasNext() { return index < objects.length; }
@Override public Object next() { return objects[index++]; } } }
public class Client { public static void main(String[] args) { Aggregate aggregate = new ConcreteAggregate(new Object[]{1, 2, 3, 4, 5}); Iterator iterator = aggregate.createIterator(); while (iterator.hasNext()) { System.out.println(iterator.next()); } } }
|