美文网首页
设计模式之享元模式

设计模式之享元模式

作者: smallstrong | 来源:发表于2017-04-24 12:16 被阅读15次

享元模式,刚好现在共享单车火,拿来开刀

享元模式UML.png
interface ShareBike{
    void ride();
}

抽象共享单车

class ShareBikeOFO implements ShareBike{
    public void ride(){
        //小黄车驾到
    }
}

天朝小黄车

class ShareBikeMoBai implements ShareBike{
    public void ride(){
        //摩拜单车
    }
}

50斤的摩拜单车

class BikeType{
    public static final String OFO = "OFO";
    public static final String MOBAI = "MOBAI";
}

共享单车类型

class ShareBikeFactory{
    HashMap shareBikeMaps = new HashMap();
    
    public ShareBikeFactory(){
        shareBikeFactory.put("BikeType.OFO",new ShareBikeOFO());
        shareBikeFactory.put("BikeType.MOBAI",new ShareBikeMoBai());
    }
    
    public ShareBike getShareBike(String type){
        if(BikeType.OFO.equals(type)){
            return (ShareBikeOFO)shareBikeMaps.get(type);
        }else if(BikeType.MOBAI.equals(type){
            return (ShareBikeMOBAI)shareBikeMaps.get(type);
        }
        return null;
    }
}

单车托管所

public class Client{
    public static void main(String args[]){
        ShareBikeFactory mshareBikeFactory = new ShareBikeFactory();
        ShareBike shareBikeOFO,shareBikeMobai;
        shareBikeOFO  = mshareBikeFactory.get(BikeType.OFO);
        shareBikeMoBai  = mshareBikeFactory.get(BikeType.MOBAI);
        shareBikeOFO.ride();
        shareBikeMoBai.ride();
    }
}

客户端根据需求拿单车来骑车

个人总结

享元模式是为了避免大量创建对象省内存时候用的,Android中消息机制中Message用链表来存储消息实现消息复用就是用到这种模式。

相关文章

  • 好程序员Java培训​分享java设计模式之享元模式

    好程序员Java培训​分享java设计模式之享元模式,Java设计模式中的享元模式。享元模式有点类似于单例...

  • Java设计模式——享元模式

    Java设计模式之享元模式 这期跟大家聊的的设计模式是享元模式,该模式也是结构模式。 简介 利用共享的方式解决大量...

  • Java设计模式_享元模式

    点击链接跳转:设计模式——享元模式

  • 享元模式

    Android进阶之设计模式 享元模式 定义: 使用共享对象有效地支持大量细粒度的对象. 享元模式是池技术的重要实...

  • 二十一、享元模式

    1. 何为享元模式 定义:通过共享已存在的对象,减少创建对象内存开销的设计模式被称为享元模式。 享元模式和单例模式...

  • 享元模式

    swift实战-享元模式 概论:通过共享已存在的对象,减少创建对象内存开销的设计模式被称作享元模式 享元模式Fly...

  • 结构型模式:享元模式

    文章首发:结构型模式:享元模式 七大结构型模式之六:享元模式。 简介 姓名 :享元模式 英文名 :Flyweigh...

  • 好程序员Java培训精讲  java设计模式—享元模式

    好程序员Java培训精讲 java设计模式—享元模式 一、关于享元模式 享元模式有点类似于单例模式,都是只生成一个...

  • 设计模式之享元模式

    享元模式,刚好现在共享单车火,拿来开刀 抽象共享单车 天朝小黄车 50斤的摩拜单车 共享单车类型 单车托管所 客户...

  • 设计模式之享元模式

    享元模式(Flyweight),运用共享技术有效地支持大量细粒度的对象。 适用场景 如果一个系统中存在大量的相同或...

网友评论

      本文标题:设计模式之享元模式

      本文链接:https://www.haomeiwen.com/subject/dltpzttx.html