【Java开源代码栏目提醒】:网学会员鉴于大家对Java开源代码十分关注,论文会员在此为大家搜集整理了“ConcreteCompositeFlyweight.java”一文,供大家参考学习
package com.javapatterns.flyweight.composite;
import java.util.Map;
import java.util.HashMap;
import java.util.Iterator;
public class ConcreteCompositeFlyweight extends Flyweight
{
private HashMap flies = new HashMap(10);
/**
* @link aggregation
* @directed
* @clientRole Composite
*/
private Flyweight flyweight;
public ConcreteCompositeFlyweight()
{
}
public void add(Character key, Flyweight fly)
{
flies.put(key, fly);
}
public void operation(String extrinsicState)
{
Flyweight fly = null;
for ( Iterator it = flies.entrySet().iterator() ; it.hasNext() ; )
{
Map.Entry e = (Map.Entry) it.next();
fly = (Flyweight) e.getValue();
fly.operation(extrinsicState);
}
}
}