Interface vs Abstract Class

최승아·2021년 11월 3일
0

1. Interface vs Abstract Class

  • Interface와 Abstract Class는 상속(extends) 받거나, 구현(implements)하는 Class가 Interface나 Abstract Class 안에 있는 Abstract Method르 구현하도록 강제하는 공통점이 있다.
  • 둘의 존재 목적이 다르다

2. Interface

  • 공통 기능을 필요로 할때 Abstract Method를 정의해놓고 구현하는 Class가 각 기능들을 Overriding하여 여러가지 형태로 구현가능 👉 다형성과 연관
  • 해당 Interface를 구현하는 Class들에 대해 동일한 method, 동작을 강제하기 위해 존재
  • Interface의 implements에는 제한이 없어 다중 구현이 가능

3. Abstract Class

  • Abstract Class를 상속하며 Class들 간의 구분이 가능해짐
  • 모호한 클래스이며 객체의 추상적인 상위 개념으로 공통된 개념을 표현할 때 쓴다 👉 예시 : 동물에는 공통적으로 이름과 색깔이 있고 ... 여기서 동물은 추상클래스

참조: [Java] Interface vs Abstract Class 정리 | 2020년 11월 30일 | https://velog.io/@gillog

profile
⭐ 개발 정리 공간 ⭐

0개의 댓글