package bridgePatterns;
public interface Brand {
void sale();
}
class Lenovo implements Brand{
@Override
public void sale() {
System.out.println("销售联想");
}
}
class Dell implements Brand{
@Override
public void sale() {
System.out.println("销售戴尔");
}
}
package bridgePatterns;
public class Computer {
protected Brand brand ;
public Computer(Brand brand) {
this.brand = brand;
}
public void sale(){
brand.sale();
}
}
class Laptop extends Computer {
public Laptop(Brand brand) {
super(brand);
}
@Override
public void sale() {
super.sale();
System.out.println("笔记本电脑");
}
}
class Desktop extends Computer {
public Desktop(Brand brand) {
super(brand);
}
@Override
public void sale() {
super.sale();
System.out.println("台式电脑");
}
}
class Pad extends Computer {
public Pad(Brand brand) {
super(brand);
}
@Override
public void sale() {
super.sale();
System.out.println("平板电脑");
}
}
package bridgePatterns;
public class Client {
public static void main(String[] args) {
Computer c = new Desktop(new Dell());
c.sale();
}
}