国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

享元模式(Flyweight)

senntyou / 2245人閱讀

摘要:享元模式一享元模式定義運(yùn)用共享技術(shù)有效的支持大量細(xì)粒度的對(duì)象二具體實(shí)現(xiàn)創(chuàng)建對(duì)象接口創(chuàng)建具體對(duì)象創(chuàng)建工廠調(diào)用輸出三優(yōu)缺點(diǎn)優(yōu)點(diǎn)減少對(duì)象的創(chuàng)建,節(jié)省內(nèi)存缺點(diǎn)提升了系統(tǒng)的復(fù)雜性四源碼

享元模式

一. 享元模式 1.1 定義

運(yùn)用共享技術(shù)有效的支持大量細(xì)粒度的對(duì)象.

二. 具體實(shí)現(xiàn) 2.1 創(chuàng)建對(duì)象接口
    public interface IFlyweight {
        void print();
    }
2.2 創(chuàng)建具體對(duì)象
    public class Flyweight implements IFlyweight {
        private String id;
        public Flyweight(String id){
            this.id = id;
        }
        @Override
        public void print() {
            System.out.println("Flyweight.id = " + getId() + " ...");
        }
        public String getId() {
            return id;
        }
    }
2.3 創(chuàng)建工廠
    public class FlyweightFactory {
        private Map flyweightMap = new HashMap();
        public IFlyweight getFlyweight(String str){
            IFlyweight flyweight = flyweightMap.get(str);
            if(flyweight == null){
                flyweight = new Flyweight(str);
                flyweightMap.put(str, flyweight);
            }
            return  flyweight;
        }
        public int getFlyweightMapSize(){
            return flyweightMap.size();
        }
    }
2.4 調(diào)用
    public static void main(String[] args) {
        FlyweightFactory flyweightFactory = new FlyweightFactory();
        IFlyweight flyweight1 = flyweightFactory.getFlyweight("A");
        IFlyweight flyweight2 = flyweightFactory.getFlyweight("B");
        IFlyweight flyweight3 = flyweightFactory.getFlyweight("A");
        flyweight1.print();
        flyweight2.print();
        flyweight3.print();
        System.out.println(flyweightFactory.getFlyweightMapSize());
    }
2.5 輸出
    Flyweight.id = A ...
    Flyweight.id = B ...
    Flyweight.id = A ...
    2
三. 優(yōu)缺點(diǎn) 3.1 優(yōu)點(diǎn)

減少對(duì)象的創(chuàng)建,節(jié)省內(nèi)存.

3.2 缺點(diǎn)

提升了系統(tǒng)的復(fù)雜性.

四. 源碼
    https://github.com/Seasons20/DisignPattern.git

END

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://m.specialneedsforspecialkids.com/yun/69534.html

相關(guān)文章

  • 一起學(xué)設(shè)計(jì)模式 - 享元模式

    摘要:享元模式屬于結(jié)構(gòu)型模式的一種,又稱輕量級(jí)模式,通過(guò)共享技術(shù)有效地實(shí)現(xiàn)了大量細(xì)粒度對(duì)象的復(fù)用概述兩種結(jié)構(gòu)狀態(tài)內(nèi)部狀態(tài)享元對(duì)象內(nèi)部不隨外界環(huán)境改變而改變的共享部分。 享元模式(Flyweight Pattern)屬于結(jié)構(gòu)型模式的一種,又稱輕量級(jí)模式,通過(guò)共享技術(shù)有效地實(shí)現(xiàn)了大量細(xì)粒度對(duì)象的復(fù)用... 概述 兩種結(jié)構(gòu)狀態(tài) 內(nèi)部狀態(tài):享元對(duì)象內(nèi)部不隨外界環(huán)境改變而改變的共享部分。 外部狀態(tài)...

    Jason 評(píng)論0 收藏0
  • 設(shè)計(jì)模式享元模式

    摘要:類圖相關(guān)的設(shè)計(jì)模式享元模式和代理模式當(dāng)代理模式消耗性能比較大的時(shí)候,就可以用享元模式享元模式和單例模式容器單例,享元模式就是復(fù)用對(duì)象的思想。源碼中的享元模式源碼地址享元模式參考慕課網(wǎng)設(shè)計(jì)模式精講設(shè)計(jì)模式讀書(shū)筆記享元模式 0x01.定義與類型 定義:提供了減少對(duì)象數(shù)量從而改善應(yīng)用所需的對(duì)象結(jié)構(gòu)的方法,系統(tǒng)使用少量對(duì)象,而且這些都比較相似,狀態(tài)變化小,可以實(shí)現(xiàn)對(duì)象的多次復(fù)用。 運(yùn)用共享技...

    vvpale 評(píng)論0 收藏0
  • JavaScript 設(shè)計(jì)模式系列 - 享元模式與資源池

    摘要:享元模式運(yùn)用共享技術(shù)來(lái)有效地支持大量細(xì)粒度對(duì)象的復(fù)用,以減少創(chuàng)建的對(duì)象的數(shù)量。意為蒼蠅,指輕蠅量級(jí),指代對(duì)象粒度很小。如果考生人數(shù)少,就分別少準(zhǔn)備幾個(gè)自動(dòng)檔和手動(dòng)檔的駕考車,考生多的話就多準(zhǔn)備幾輛。我們?nèi)タ妓牧?jí)的時(shí)候?yàn)槭裁催@么多考試 showImg(https://segmentfault.com/img/remote/1460000020135777); 享元模式 (Flyweig...

    104828720 評(píng)論0 收藏0
  • 《設(shè)計(jì)模式》3.結(jié)構(gòu)型模式

    摘要:類的適配器結(jié)構(gòu)目標(biāo)角色這就是所期待得到的接口,由于是類適配器模式,因此目標(biāo)不可以是類。這種類型的設(shè)計(jì)模式屬于結(jié)構(gòu)型模式,它是作為現(xiàn)有的類的一個(gè)包裝。和適配器模式的關(guān)系適配器模式的用意是改變所考慮對(duì)象的接口,而代理模式不能改變。 點(diǎn)擊進(jìn)入我的博客 3.1 適配器模式 適配器模式把一個(gè)類的接口變換成客戶端所期待的另一種接口,使得原本因接口不匹配而無(wú)法在一起工作的兩個(gè)類能夠在一起工作。 3...

    Yuqi 評(píng)論0 收藏0
  • Design Patterns - Flyweight Pattern(譯)

    摘要:享元模式會(huì)復(fù)用那些內(nèi)存中已經(jīng)存在且與請(qǐng)求對(duì)象相似的對(duì)象,而不是去創(chuàng)建新的對(duì)象,那些已經(jīng)存在的對(duì)象會(huì)以某種方式存儲(chǔ),如果沒(méi)有發(fā)現(xiàn)與請(qǐng)求匹配的對(duì)象時(shí)將會(huì)創(chuàng)建新的對(duì)象。 原文鏈接譯者:smallclover希望對(duì)你有所幫助,謝謝! 設(shè)計(jì)模式-享元模式 享元模式主要用來(lái)減少對(duì)象的數(shù)量(復(fù)用我們內(nèi)存中已存在的對(duì)象,減少在系統(tǒng)創(chuàng)建對(duì)象實(shí)例),以此來(lái)減少對(duì)內(nèi)存資源的占用,從而提高系統(tǒng)的性能。這種類型...

    darryrzhong 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<