zoukankan      html  css  js  c++  java
  • design_model(11)flyweight

    1.享元模式

    池技术的重要实现方式,它可以减少应用程序创建的对象,降低程序内存的占用,提高程序的性能。

    2.实例

    public class Color {
        private  String  color;
    
    	public String getColor() {
    		return color;
    	}
    
    	public void setColor(String color) {
    		this.color = color;
    	}
        
    }
    
    public class FlyWeight {
    	private Map<String, Color> colors = new HashMap<>();
    
    	public Color getColor(String str) {
    		if (colors.containsKey(str)) {
    			return colors.get(str);
    		} else {
    			Color color = new Color();
    			colors.put(str, color);
    			return color;
    		}
    	}
    }
    
    public class Client {
    	public static void main(String[] args) {
    		FlyWeight flyWeight = new FlyWeight();
    		Color color = flyWeight.getColor("红色");
    		Color color2 = flyWeight.getColor("红色");
    		System.out.println(color == color2);// true
    	}
    }
    
  • 相关阅读:
    Unix网络编程中的五种IO模型
    go工具库分析——go-snowflake
    defer
    滑动窗口
    快速幂
    Golang使用注意点
    微服务数据一致性基础认知
    KMP算法
    单调栈和单调队列
    LRU简单学习
  • 原文地址:https://www.cnblogs.com/gg128/p/9570277.html
Copyright © 2011-2022 走看看