zoukankan      html  css  js  c++  java
  • java设计模式总结

    参考:https://www.cnblogs.com/maowang1991/archive/2013/04/15/3023236.html

    一、创建型模式:静态工厂、抽象工厂、单例模式、建造者模式、原型模式

    静态工厂

      优点:不需要创建实例,直接使用

      缺点:对扩展不开放,增加新功能方法需要修改工厂类

    抽象工厂

      优点:对扩展开放,新增功能只需要实现接口创建一个新工厂,不需要修改现有工厂

      缺点:需创建多个工厂类、重复代码较多

    单例模式:JVM中只存在一个实例,通过单一实例控制数据唯一通道,单例实现需要考虑延迟加载,还需要考虑线程安全,主要可以通过synchronized、volatile、双重检查实现,也可通过内部静态enum枚举类实现(JVM能保证enum构造方法只执行一次)

    建造者模式:创建和表现分开,继承接口,给予不同的建造者、创建含有相同属性不同的表现形式的对象

    原型模式:从已有的对象复制快速创建一个新对象,类需要实现Cloneable接口,一个clone方法中调用super.clone(),如类中包含引用属性,需要深复制,可以通过当前对象二进制流复制,写、读对象二进制流

    二、结构型模式:适配器模式、

    适配器模式

      类的适配器模式:当希望将一个类转换成满足另一个新接口的类时,可以使用类的适配器模式,创建一个新类,继承原有的类,实现新的接口即可。

      对象的适配器模式:当希望将一个对象转换成满足另一个新接口的对象时,可以创建一个Wrapper类,持有原类的一个实例,在Wrapper类的方法中,调用实例的方法就行。

      接口的适配器模式:当不希望实现一个接口中所有的方法时,可以创建一个抽象类Wrapper,实现所有方法,我们写别的类的时候,继承抽象类即可。

  • 相关阅读:
    读理,妙句秒人秒事,二记
    读理,妙句秒人秒事,一记
    (原)DirectX11 深度测试(有点另类)
    游戏编程书籍推荐
    android入门-环境搭建
    Spring||Interview
    JSR-133内存模型手册
    JVM执行引擎
    HIbernate总结
    虚拟机类加载机制
  • 原文地址:https://www.cnblogs.com/ccgblog/p/8004671.html
Copyright © 2011-2022 走看看