Java 设计模式 之 鹰量模式

Posted verejava

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java 设计模式 之 鹰量模式相关的知识,希望对你有一定的参考价值。

http://www.verejava.com/?id=16999120847970

package com.flyweight.theory;

public class TestChess
{
    public static void main(String[] args)
    {
        Chess black1=ChessFactory.getChess("黑棋");
        
        Chess black2=ChessFactory.getChess("黑棋");
        
        
        Chess white1=ChessFactory.getChess("白棋");
        
        System.out.println(ChessFactory.getSize());
    }
}





package com.flyweight.theory;

import java.util.HashMap;
import java.util.Map;

public class ChessFactory
{
    private static Map<String,Chess> map=new HashMap<String,Chess>();
    
    public static int getSize()
    {
        return map.size();
    }
    
    public static Chess getChess(String key)
    {
        Chess chess=null;
        if(map.get(key)==null)
        {
            chess=new Chess(key);
            map.put(key, chess);
        }
        else
        {
            chess=map.get(key);
        }
        return chess;
    }
}





package com.flyweight.theory;

public class Chess
{
    private int x,y;
    private String type;
    
    public Chess(String type)
    {
        super();
        this.type = type;
    }
    public int getX()
    {
        return x;
    }
    public void setX(int x)
    {
        this.x = x;
    }
    public int getY()
    {
        return y;
    }
    public void setY(int y)
    {
        this.y = y;
    }
    public String getType()
    {
        return type;
    }
    
    
}

http://www.verejava.com/?id=16999120847970

以上是关于Java 设计模式 之 鹰量模式的主要内容,如果未能解决你的问题,请参考以下文章

JUC并发编程 共享模式之工具 JUC CountdownLatch(倒计时锁) -- CountdownLatch应用(等待多个线程准备完毕( 可以覆盖上次的打印内)等待多个远程调用结束)(代码片段

java 查看寻呼机设计模式与片段。

Java语言基础之方法的设计

Java设计模式之单例模式

五华为鸿蒙HarmonyOS应用开发之Java开发模式下的同一个 Page 里实现页面跳转时无参(有参)传递回值详解

Java代码实现设计模式之工厂模式