策略模式:

设计一个接口或者抽象类。

public interface Employment{

    public void work();
}

多种具体实现:

public class Enterprise implements Employment{

    public void work("创业");
}

.........

容器对象:

public class Context(){

Employment employment;

public void work(){

   employment.work();

}

pubilc Context(Employment employment){

     this.employment=employment;}

   }

}

思路:就是将多种实现封装在一个容器中,这样就可以通过容器调用多种实现方法。

本质:就是一种方法。

 

桥接模式:

也是设计一个抽象类或者接口。多个实现。

但是是通过调用类直接调用。

本质:类的一种成员属性

 

区别:看起来两个的功能好像都一样。但是一个有容器类,一个没有。

为什么:

策略模式本质是一个方法。所以要设计一个容器类,通过容器类调用实现。

桥接模式本质是一个成员。所以可以通过类直接调用。

 

 

Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐