그냥 클래스에서 계속해서 수정해서 쓰면되는데 왜 굳이 인터페이스를 쓸까 그냥 추상화에서 쓰면 되는거 아닐까 ?이론적으론 다중상속이 가능해서 라는데 와닿지는 않았다. 근데 갑자기 생각이 든것이 Discount라는 할인정책 인터페이스를 생성했다고 가정하고, DIscount 에서 RateDiscount라는 클래스를 생성해서 할인을 적용시킨다고 생각한다. 그리고 나중에 리팩토링을 걸쳐서 새로운 할인정책을 사용한다고 했을때, Discount에서 새로운 클래스를 생성한 후 FIxDiscount 라는 새로운 클래스를 생성해서 오버라이딩해서 사용한다고 하면 교체가 용이해진다...괜히 뿌듯하당 ....