设计模式-装饰者模式

装饰者模式

    自己关联自己,给自己添加新的功能

public abstract class Hand {
    public abstract String upDown();
}
public class LeftHand extends Hand { 
    Hand hand;
    public LeftHand(Hand hand) {
        this.hand = hand;
    }
    
    @Override
    public String upDown() {
        return hand.upDown() + "LeftHand";
    }
}


public class GirlHand extends Hand { 
    @Override
    public String upDown() {
        return "Girl";
    }
}

    

public class BitchHand extends Hand {
    @Override
    public String upDown() {
        return "Bitch";
    }
}
public class Main {
    public static void main(String[] args) {
        Hand hand1 = new LeftHand(new GirlHand());
        Hand hand2 = new LeftHand(new BitchHand());
    }
}


你可能感兴趣的:(设计模式-装饰者模式)