- 인터페이스
- 인터페이스는 정의만 하고 내용은 implements로 받은 클래스에서 정의해야함.
- 인터페이스 내에 구현한 메서드들은 사용하는 클래스들에서 반드시 구현해야하기에, 각기 다른 클래스에서 동일한 이름의 메서드를 구현하게 만들 수 있어서 사용함.
- 추상 클래스
- 클래스, 메서드에 abstract를 붙여 사용 가능
- 추상클래스를 상속받을 경우, abstract를 붙인 메서드는 반드시 상속받은 클래스에서 구현해야함.
- 추상클래스는 인터페이스와 달리 메서드를 정의, 구현까지 할 수 있음.
- 객체화(인스턴스화)가 불가능함.
- 타 클래스에서 추상 클래스를 상속 받을 시(extends), 추상 클래스에서 구현한 메서드는 재구현할 필요가 없지만, 추상 메서드는 반드시 구현하거나 클래스 형태를 추상클래스로 바꿔줘야함.
Java