java.lang.NullPointerException: Cannot invoke "hello.core.discount.DiscountPolicy.discount(hello.core.member.Member, int)" because "this.discountPolicy" is null private final DiscountPolicy discountPolicy = new FixDiscountPolicy(); 원래 이 코드를 DIP원칙에 맞는 코드를 작성하기위해 discountPolicy의 구현 클래스를 아래처럼 삭제하여 아무것도 할당되지 않아 발생 private DiscountPolicy discountPolicy; 쉽게 말해 null값에 .을 찍어서 발생 ..