路一步步走>> 设计模式十一:FlyWeight-享元

版权声明:本文为博主原创文章,未经博主允许不得转载。个人公众号:百草疯茂 https://blog.csdn.net/wang_pengyu/article/details/84891884
package com.test.DPs.JieGou.FlyWeight;

import java.util.HashMap;

/**
 * 结构型:FlyWeight-享元		桥接:作用面为 对象
 * 
 * 用途:运用共享技术,有效地支持大量细粒度对象。
 */
abstract class flywei{}

public class FlyWeight extends flywei{
	Object obj;
	public FlyWeight(Object obj){
		this.obj = obj;
	}
}
class FlyWeightFactory{
	private HashMap<Object, FlyWeight> data;
	public FlyWeightFactory(){ data = new HashMap<>();}
	public FlyWeight getFlyWeight(Object object){
		if(data.containsKey(object)){			//if(data.containsKey(object)){
			return data.get(object);
		}else{
			FlyWeight flyweight = new FlyWeight(object);
			data.put(object, flyweight);
			return flyweight;
		}
	}
}

猜你喜欢

转载自blog.csdn.net/wang_pengyu/article/details/84891884
今日推荐