簡體   English   中英

Singleton與戰略模式

[英]Singleton with the strategy pattern

這是戰略界面的樣子

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實例,還是有更好的方法?
我在這里讀過,不應該使用單例來節省內存,但似乎沒有必要創建數百個相同的實例。 也許最好的解決方案不是單身人士,而是與其相關的東西。

我該如何制定策略? 我不應該為這些類型的問題煩惱嗎?

通常新的實現應該更好。 Singleton很多都是基於策略的實現,條件是應該沒有私有屬性。 這對於更小更簡單的策略來說效果很好,但我不建議依賴它。 關於為什么單身人士一般不好的更多信息可以在這里找到

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM