public class Order {
private String name;
private String address;
private int price;
private int stock;
public Order(){}
public Order(OrderBuilder orderBuilder){
this.name=orderBuilder.name;
this.address=orderBuilder.address;
this.price=orderBuilder.price;
this.stock=orderBuilder.stock;
}
public static OrderBuilder builder(){
return new OrderBuilder();
}
public static class OrderBuilder{
private String name;
private String address;
private int price;
private int stock;
public OrderBuilder name(String name){
this.name=name;
return this;
}
public OrderBuilder address(String address){
this.address=address;
return this;
}
public OrderBuilder price(int price){
this.price=price;
return this;
}
public OrderBuilder stock(int stock){
this.stock=stock;
return this;
}
public Order build(){
return new Order(this);
}
}
public String toString(){
return "주문제품명 : "+name+" " +
"가격 : "+price+" " +
"주소 : "+address+" "+
"수량 : "+stock;
}
}
public class Main {
public static void main(String[] args){
Order order=Order.builder()
.name("홍길동")
.address("서울")
.price(1000)
.stock(10)
.build();
System.out.println(order.toString());
}
}
주문제품명 : 홍길동 가격 : 1000 주소 : 서울 수량 : 10