데코레이터 패턴
테코레이터 패턴에서는 객체에 추가적인 요건을 동적으로 첨가한다. 데코레이터는
서브클래스를 만드는 것을 통해서 기능을 유연하게 확장할 수 있는 방법을 제공한다.
예제
커피를 만들 때 여러가지 추가 요소를 넣어서 커피를 만들고 계산하는 예제
- Beverage.java
public abstract class Beverage { |
- CondimentDecorator.java
public abstract class CondimentDecorator extends Beverage { |
- HouseBlend.java
public class HouseBlend extends Beverage { public double cost() |
- Espresso.java
public class Espresso extends Beverage { public Espresso(){ public double cost() |
- Decaf.java
public class Decaf extends Beverage { public Decaf(){ public double cost() |