추상클래스 vs 인터페이스
인터페이스 (Intetface)
- 구현 객체의 같은 동작을 보장하기 위함
- 다중 상속 가능
- 추상메서드만 가능
- 상수 + 추상메서드 형태
- 생성자와 일반변수를 가질 수 없음
- implements
- 메서드 선언만 가능
추상클래스 (Abstract)
- 추상클래스를 상속받아 기능을 이용하고 확장시키는데 의의
- 다중 상속 불가능
- 일반메서드 + 추상메서드 가능
- 일반변수 + 일반메서드 + 추상메서드
- 생성자와 일반변수 모두 가질 수 있음
- extends
- 메서드의 부분적인 구현 가능