전략 패턴 또는 정책 패턴이라고 하며 이는 실행 중에 알고리즘을 선택할 수 있게 하는 패턴 예를 들어 과일 매장에서 상황에 따른 가격할인 정책을 적용하고 있다고 가정한다. 1. 매장에 들어온 첫번째 손님 할인정책 2. 저녁시간대에 신선도가 떨어진 과일에 대한 할인정책 public class Calculator { public int calculate(boolean firstGuest, List items) { int sum = 0; for (Item item: items) { if (firstGuest) { sum += (int) (item.getPrice() * 0.9); } else if (!item.isFresh()) { sum += (int) (item.getPrice() * 0.8); } els..