Labels

algorithms (22) Design Patterns (20) java (19) linux (14) Snippet (13) service mix (6) soa (4)

Decorator Design Pattern (Wrapper)

DecoratorPattern.jpeg

DrinkDecorator

public abstract class DrinkDecorator extends Drink {
public Drink drink;

}


Drink


public abstract class Drink { 
    String description;


    int cost;



    abstract int getCost();



    String getDesc() {

        return this.description;


    }


}



Vodka



public class Vodka extends Drink {

    String description = " Vodka ";



    int cost = 100;



    @Override

    int getCost() {


        return this.cost;


    }


}




OrangeJuice & like wise LemonJuice


public class OrangeJuice extends DrinkDecorator {

    String description = " fresh orenge juice ";



    int cost = 5;



    public OrangeJuice(Drink myVodka) {

        this.drink = myVodka;


    }



    @Override

    int getCost() {


        return this.cost + this.drink.getCost();


    }


}



Client Code



//Make Vodka with orange



        //make vodka

        Drink myVodka = new Vodka();


        //mix orenge and vodka


        DrinkDecorator orengeVodka= new OrangeJuice(myVodka);


        //mix lime juie in the orengeVodka


        DrinkDecorator LimeOrengeVodka= new LimeJuice(orengeVodka);


        //the cost of the final vodka should be that of lime


        //orenge and vodka cost


        System.out.println(LimeOrengeVodka.getCost());

1 comment:

  1. Bạn là chủ xe và đang cần tìm hàng vận chuyển? Bạn là người cần tìm xe vận chuyển hàng? Vậy bạn hãy ghé vào sàn vận tải nội địa đây là nơi sẽ giúp bạn tìm thấy thứ bạn đang cần tìm. Hiện nay, chúng tôi tự hào là một trong những đơn vị cung cấp giải pháp vận chuyển hàng đầu hiện nay. Với các dịch vụ vận chuyển hàng hóa nội địa, vận chuyển Bắc Trung Nam, vận chuyển hàng đông lạnh bắc nam,... Đến với chúng tôi bạn sẽ không cần lo lắng tìm hàng hay tìm xe để vận chuyển hàng. Hiện nay thì các tuyến vận chuyển chúng tôi đang có thể kể đến như: vận chuyển hàng đi bạc liêu, vận chuyển hàng đi vũng tàu, vận chuyển hàng đi bắc ninh, vận chuyển hàng đi bến tre,... Để biết thêm thông tin hãy liên hệ với chúng tôi nhé.

    ReplyDelete

Search 24 Bytes