以下是策略的界面可能是什么样子
public interface Strategy
{
public void doStuff(Object o);
}这里有一个可能的实现
public class StrategyImpl implements Strategy
{
@Override
public void doStuff(Object o)
{
//Do things with o
}
}现在,我可能有数百个对象使用实现StrategyImpl。应该为所有这数百个对象创建一个新的StrategyImpl实例,还是有更好的方法?
我在here上读到,不应该使用单例来节省内存,但是似乎没有必要创建数百个相同的实例。也许最好的解决办法不是一个人,而是一些类似的东西。
我该如何制定策略?我不应该为这类问题而烦恼吗?
发布于 2014-04-05 09:50:51
通常,新的实现应该更好。Singleton在很大程度上是基于“战略”的执行,其条件是不应有私人属性。对于更小、更简单的策略来说,这会很好,但我不建议依赖这种策略。更多关于为什么单点子一般不好的信息可以找到here。
https://stackoverflow.com/questions/22879156
复制相似问题