标签:method logs abstract key factor new font actor dem
享元模式:运用共享技术有效地支持大量细粒度的对象。
public abstract class Flyweight { public abstract void method(int stamp); } public class ConcreteFlyweight extends Flyweight { @Override public void method(int stamp) { System.out.println("具体的Flyweight:" + stamp); } } public class UnsharedFlyweight extends Flyweight{ @Override public void method(int stamp) { System.out.println("非共享的具体Flyweight:"+stamp); } }
public class FlyweightFactory { private HashMap flyweights = new HashMap(); public FlyweightFactory() { flyweights.put("A", new ConcreteFlyweight()); flyweights.put("B", new ConcreteFlyweight()); } public Flyweight getFlyweight(String key) { return (Flyweight) flyweights.get(key); } }
public class FlyweightDemo { public static void main(String[] args) { int stamp = 10; FlyweightFactory factory = new FlyweightFactory(); Flyweight A = factory.getFlyweight("A"); A.method(stamp--); Flyweight B = factory.getFlyweight("B"); B.method(stamp--); Flyweight unsharedFlyweight = new UnsharedFlyweight(); unsharedFlyweight.method(stamp--); } }
标签:method logs abstract key factor new font actor dem
原文地址:http://www.cnblogs.com/emoji1213/p/7625351.html