
1. 인터페이스
- 추상 클래스인 Unit의 기능을 용도별로 분할하여 나누어놓고, 주인공과 몬스터가 각각 기능 중에서 자신에게 필요한 것들만 상속받도록 하는 방법을 필요로 한다.
1.1. 추상클래스의 한계
- 자바 클래스간의 상속에서는 하나의 부모만 존재할 수 있기 때문에, 앞의 상황에서 요구하는 다중 상속의 구현은 불가능하다.
1-2. Interface란?
- 완벽한 추상화를 구현하기 위한 Java Class의 한 종류
- 다중 상속이 가능하기 때문에 용도별로 세분화하여 필요한 요소만 상속할 수 있게 된다.
- 추상 클래스
-> 멤버변수, 생성자, 메서드, 추상 메서드를 포함할 수 있다.
-> 이 클래스를 상속받는 자식 클래스는 다른 클래스를 상속받을 수 없다.
-> 객체의 생성이 불가능 

- 인터페이스
-> 추상 메서드만 포함할 수 있다.
-> 인터페이스는 다중 상속이 가능하다.
-> 객체의 생성이 불가능