4.6 Java进阶(六)设计模式

一、概述

设计模式是针对某一类问题的最优解决方案,是从许多优秀的软件系统中总结出的。Java中设计模式(java design patterns)通常有23种。

二、MVC思想

1、M--Model(模型)

2、V--View(视图)

3、C--Controller(控制器)

三、三层思想

1、表示层

2、业务逻辑层

3、数据访问层(DAO)

四、单例模式

1、特点:

(1)一个类只有一个实例

(2)提供一个全局访问点

(3)禁止拷贝

2、实例:酷狗音乐、KTV点歌系统、网易云音乐

五、工厂模式

1、分类:简单工厂模式、抽象工厂模式。

2、实例:框架springMvc、struts2、hibernate

六、代理模式

1、分类:静态代理、动态代理

2、实例:框架spring动态代理,struts2中拦截器,面向切面的编程

七、饿汉模式和懒汉模式

1、饿汉模式:就是在类初始化的时候,创建对象,这种方式是线程安全的,在程序运行期间就这一个对象。

public class Singleton{
    private static Singleton singleton = new Singleton ();
    private Singleton (){

    }
    public Singleton getInstance()
    {
        return singletion;
    }
} 

2、懒汉模式:是在第一次使用时才创建对象。

public class Singleton{
    private static Singleton singleton = null;
    public static synchronized synchronized getInstance(){
        if(singleton==null){
            singleton = new Singleton();
        }
    return singleton;
    }
} 

3、如果在多线程环境中要考虑线程安全问题。优先使用饿汉模式,不用考虑线程安全问题。

八、其它设计模式

1、工厂模式(Factory)
2、建造模式(Builder)
3、原始模型模式(Prototype)
4、单例模式(Singleton)
5、适配器(Adapter)
6、桥梁模式(Bridge)
7、合成模式(Composite)
8、装饰模式(Decorator)
9、门面模式(Facade)
10、享元模式(Flyweight)
11、代理模式(Proxy)
12、职责链(Chain of Responsibility)
13、命令模式(Command)
14、解释器模式(Interpreter)
15、迭代子模式(Iterator)
16、调停者模式(Mediator)
17、备忘录模式(Memento)
18、观察者模式(Obserber)
19、状态模式(State)
20、策略模式(Strategy)
21、模板方法模式(Template Method)
22、访问者模式(Visitor)

猜你喜欢

转载自blog.csdn.net/qq_40254536/article/details/81141427
4.6