zoukankan      html  css  js  c++  java
  • java设计模式 23种;单例设计模式

    设计模式用来解决某些场景下的某一类问题的;通用的解决方案;

    有了设计模式之后 可以让代码更容易被理解 确保了复用性 可靠性 可扩展性;

     设计模式分为三类

    1.创建型模式(5种);用于解决对象创建的过程;

      单例模式 工厂方法模式 抽象工厂模式 创造者模式 原型模式

    2.结构型模式(7种);把类或对象通过某种形式结合在一起 构成某种复杂或合理的结构;

      适配器模式 装饰者模式 代理模式 外观模式 桥接模式 组合模式 享元模式;

    3.行为型模式(11种);用来解决类或对象之间的交互 更合理的优化类或对象之间的关系;

      观察者模式 策略模式 模板模式 责任链模式 解释器模式 命令模式 状态模式 备忘录模式 访问者模式 中介者模式;

    ==============================================================

    单例模式(Singleton)

      设计-->一个类只能创建一个对象 有效减少内存占用空间;

    单例模式的实现;对象的加载--->饿汉式(立即加载);懒汉式(延迟加载);生命周期托管(单例对象别人帮我们处理)

      1.私有的构造方法;

      2.私有的静态的当前类对象作为属性;

      3.公有的静态方法,返回当前类对象;

    对象的加载

    饿汉式(立即加载);对象启动时候就加载啦,不会产生对象没有就拿来使用的问题 空指针异常;启动项目加载的对象过多 有些还没有使用 产生服务器承载压力的问题;

    懒汉式(延迟加载);对象什么时候用到了,才会加载;可能会由于没有操作好 导致异常(很严谨);启动项目时候只有需要的加载 不需要的还没有创建 不会浪费空间;

    生命周期托管(单例对象别人帮我们处理);对象加载过程交给别人;

     

     适配器模式 Adapter

    定义一个规则-->和尚 吃斋 念经 打坐 撞钟 习武

    适配器(通常是一个抽象类)添加某些具体实现(方法内部抛出异常)

    鲁智深 

     

     策略模式 Strategy---行为模式

    用来解决 执行流程固定 执行的结果由于提供了不同的策略而不同;

    人--抽象类 接口(不能产生对象) 传递一个子类对象

     人类 提供策略--抽象类、抽象方法;

    具体类 实现策略;(老年人、vip、年前人)

     

    越努力,越幸运!!! good good study,day day up!!!
  • 相关阅读:
    WebApi 接口参数不再困惑:传参详解
    dataType和contentType的区别
    WaitHandles 的数目必须少于或等于 64 个--任意线程信号量监视
    跨线程调用DataGridView控件
    (转)调整.NET控件WebBrowser的默认浏览器内核版本
    Winform中checklistbox控件的常用方法
    csuoj 残缺的棋盘
    csuoj 你经历过绝望吗?两次! bfs + 优先队列
    csuoj barricade
    csuoj 集训队分组
  • 原文地址:https://www.cnblogs.com/canglongdao/p/12845610.html
Copyright © 2011-2022 走看看