概念:
将抽象的部分与它的实现部分分离,使它们可以独立地变化。
案例:
当我们制作课件,需要不同的字体和颜色,请通过桥接模式设计案例。
类图:
代码实现
color接口:
package bridge;
public interface Color {
public String setcolor();
}
red:
package bridge;
public class red implements Color{
@Override
public String setcolor() {
// TODO Auto-generated method stub
return "红色";
}
}
blue:
public class blue implements Color{
public String setcolor() {
// TODO Auto-generated method stub
return "蓝色";
}
}
font:
package bridge;
public abstract class font {
Color color;
public abstract void write();
public Color getColor() {
return color;
}
public void setColor(Color color) {
this.color = color;
}
}
fourpx:
package bridge;
public class fourpx extends font{
public void write() {
System.out.println("4px的字体,颜色为:"+color.setcolor());
}
}
tenpx:
package bridge;
public class tenpx extends font {
Color color;
public void write() {
System.out.println("字号:10px;颜色:"+color.setcolor());
}
}
client:
package bridge;
public class Client {
public static void main(String[] args) {
font f=new fourpx();
f.setColor(new red());
f.write();
}
}
结果:
结果2: