📄 flavorfactorysingleton.java
字号:
package com.javapatterns.flyweight.coffeeshop;
public class FlavorFactorySingleton
{
/**
* @label Flyweight
* @link aggregation
* @supplierCardinality 0..**/
private Order[] flavors = new Flavor[10];
private int ordersMade = 0;
private int totalFlavors = 0 ;
/**
* @label Creates
*/
private static FlavorFactorySingleton myself = new FlavorFactorySingleton() ;
private FlavorFactorySingleton() { }
public static FlavorFactorySingleton getInstance()
{
return myself;
}
public Order getOrder(String flavorToGet)
{
if (ordersMade > 0)
{
for (int i = 0; i < ordersMade; i++)
{
if (flavorToGet.equals((flavors[i]).getFlavor()))
{
return flavors[i];
}
}
}
flavors[ordersMade] = new Flavor(flavorToGet);
totalFlavors++;
return flavors[ordersMade++];
}
public int getTotalFlavorsMade()
{
return totalFlavors;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -