인터페이스와 추상화 모두 메서드를 재정의(Override)하여 사용하기에 조금 헷갈릴 수 있다. 하지만 전혀다른것이며 확실한 차이가 있다. 인터페이스 클래스가 인스턴스의 청사진이라면, 인터페이스는 클래스의 청사진이다. 인터페이스는 클래스의 메서드들의 목록과 동작을 정의 하며 인터페이스를 구현한 클래스는 디폴트 메서드를 제외한 인터페이스의 모든 메서드를 재정의해야 한다. 추상 클래스 추상 클래스는 추상화를 통해 부모 클래스는 공통적인 속성을, 자식 클래스는 각자의 속성을 추가하여 사용한다. 이를 통해 코드의 중복을 줄이고 유지보수성을 높일 수 있다. 재정의하여 사용할 메서드는 추상 메서드(Abstract Method)로 구현하며 반드시 구현해야 한다. 정리하자면, 인터페이스는 클래스 간의 계약을 정의하고 ..