桥接模式

衣服种类:T恤、夹克、工装。
衣服颜色:红色、黄色、黑色。
桥接:红色T恤、红色夹克、红色工装(有点变态)、黄色T恤、黄色夹克、黄色工装、黑色T恤、黑色夹克、黑色工装。
代码:

package com.lt.designpatterns;

/**
 * 自己手写一个桥接模式
 */
public class BridgeClient {
    public static void main(String[] args) {
        Color yellow = new Yellow();
        Clothes tShirt = new TShirt(yellow);
        tShirt.chooseClothes();
    }
}

/**
 * 颜色接口
 */
interface Color {
    void chooseColor();
}

/**
 * 黄颜色实现类
 */
class Yellow implements Color {

    @Override
    public void chooseColor() {
        System.out.println("choose yellow color");
    }
}

/**
 * 红颜色实现类
 */
class Red implements Color {

    @Override
    public void chooseColor() {
        System.out.println("choose red color");
    }
}

/**
 * 衣服抽象类
 */
abstract class Clothes {
    protected Color color;

    protected Clothes(Color color) {
        this.color = color;
    }

    abstract void chooseClothes();
}

/**
 * T恤衣服继承类
 */
class TShirt extends Clothes {

    public TShirt(Color color) {
        super(color);
    }

    @Override
    void chooseClothes() {
        System.out.println("Choose TShirt clothes");
        color.chooseColor();
    }
}

/**
 * 夹克继承类
 */
class Jack extends Clothes {

    public Jack(Color color) {
        super(color);
    }

    @Override
    void chooseClothes() {
        System.out.println("Choose Jack clothes");
        color.chooseColor();
    }
}


  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值