Skip to content

OOP: Builder Pattern

Mani Bhushan edited this page Sep 8, 2016 · 2 revisions

Builder pattern builds a complex object using simple objects and using a step by step approach.

Builder Pattern Demo

Interfaces:
Item:
String name();
float price();
Packaging packing();

=========

Packaging:
String pack();

Abstract Classes:
abstract Burger implements Item:
abstract float price();
public Packing packing() {
    return new Wrapper();
}

===============================

abstract ColdDrink implements Item:
abstract float price();
public Packing packing() {
    return new Bottle();
}
Classes:
a. VegBurger //extends from Burger
b. ChickenBurger //extends from Burger

c. Pepsi //extends ColdDrink
d. Coke // extends ColdDrink

e. Meal // has an list of items in List<Item> items.

f. MealBuilder //builds veg & non-veg meals.

g. MealBuilderClient //demo for the builder pattern.

Clone this wiki locally