享元模式 核心程式碼

劍握在手發表於2013-11-26

享元模式可以減少記憶體佔用,重複資料不再開闢記憶體。

Integer的-128~127,String的裝箱,我認為都可以算做享元模式。 

其核心(偽)程式碼如下:

  private static Map<T1,T2 > map= new HashMap<T1, T2>();
   
    private ConstructorMethod() {}
   
    public static method createObject(T1 t1) {
        T2 t2= map.get(t1);
        if (t2== null) {
            t2= new ConcurrentWebSite(t1);
            map.put(t1, t2);
        }
        return t2;
    }

在一個類中通過一個Map來儲存資料,如果資料重複則不會建立。

相關文章