[Java] extends와 implements 차이

Seunghee Lee·2023년 3월 20일
0

Java

목록 보기
8/12

💡상속(Inheritance)이란 ?

상속과 관련된 이자바의 내용정리는 여기서마쳤다.

간략하게 정리하자면

객체는 class로 정의되고, 객체마다의 계층을 표현하기 위해 만들어진 것이 바로 상속이다. 하위 객체는 상위 객체 즉, 부모의 특징을 물려받는것이 특징이다.

🌼 상속받는 객체는 메소드/변수를 구현하는가 or 그대로 사용하는가에 따라서 상속형태가 나뉘어 진다.

  • extends = 부모에서 선언하고 자식은 메소드 / 변수를 그대로 사용할 수 있다.
  • implements = 부모 객체는 선언만 하고 자식은 오버라이딩해서 내용을 재정의한다. (interface 구현)
  • abstract = extends와 interface의 혼합 / extends 하되 몇 개는 추상 메소드로 구현되어 있다.

💡extends vs. implements

extends

  • 부모의 메소드를 그대로 사용할 수 있으며, 오버라이딩 할 필요 없이 부모에 구현되어 있는 것을 직접 사용이 가능하다.
  • 일반 클래스와 abstract 클래스 상속에 사용된다.

implements

  • 부모의 메소드를 반드시 오버라이딩해야 한다.
  • interface 상속에 사용된다.
extendsimplements
class가 class를 상속받을 때class가 interface를 사용할 때
interface가 interface를 상속받을 때interface가 class를 사용할 때
한 개의 클래스만 상속받는다여러 개의 클래스를 상속받는다
부모 클래스의 기능을 사용할 수 있다implements한 클래스의 내용을 다 사용해야 한다

🚩 요약하면, extends는 클래스를 확장한 것이고, implements는 인터페이스를 구현한 것이다.

참고한 블로그

profile
자라나라 개발개발 ~..₩

0개의 댓글