设计模式之桥接模式(Bridge Pattern)
备注:只是了解了大概,在实际应用中还没有
1.用处
将抽象部分与实现部分分离,使它们都可以独立的变化。
2. 分类
结构型模式
3. UML
4. 代码
测试类Test
public class Test {
public static void main(String[] args) {
Shape circle= new Circle(0, 0, 2, new RedCircle()) ;
circle.draw();
}
}
实体
**抽象实体Shape**
public abstract class Shape {
protected DrawAPI drawApi;//接口的功能
public Shape(DrawAPI drawApi) {
super();
this.drawApi = drawApi;
}
public abstract void draw();//实体的功能
}
**具体实体 -圆Circle**
public class Circle extends Shape {
private int x, y, radius;
public Circle(int x, int y, int radius, DrawAPI drawApi) {
super(drawApi);
this.x = x;
this.y = y;
this.radius = radius;
}
@Override
public void draw() {
this.drawApi.drawCirCle(radius, x, y);
}
}
接口
public interface DrawAPI {
public void drawCirCle(int radius,int x,int y);
}
**接口的实现**
public class RedCircle implements DrawAPI{
@Override
public void drawCirCle(int radius, int x, int y) {
System.out.println("画一个红圈");
}
}