21. 인터페이스 (Interface)

강태석·2022년 8월 19일
0

Java 기초

목록 보기
21/24

추상 클래스의 한계

  • 자바 클래스 간의 상속에는 하나의 부모만 존재할 수 있기 때문에, 앞의 상황에서 요구하는 다중 상속의 구현은 불가능하다.

Interface란?

  • 완벽한 추상화를 구현하기위한 java Class의 한 종류이다.
  • 다중 상속이 가능하기 때문에 용도별로 세분화 하여 필요한 요소만 상속할 수 있다.

비교

  • 추상클래스
    -> 멤버변수, 생성자, 메서드, 추상메서드를 포함할 수 있다.
    -> 이 클래스를 상속받는 자식 클래스는 다른 클래스를 상속받을 수 없다.
    -> 객체의 생성이 불가능하다
  • 인터페이스
    -> 추상메서드만 포함할 수 있다.
    -> 인터페이스는 다중 상속이 가능하다.
    -> 객체의 생성이 불가능하다.

implements

  • 인터페이스의 상속은 implements 키워드를 사용한다.
  • 인터페이스도 추상화를 구현하고 있기 때문에, 인터페이스를 상속받는 클래스는 인터페이스 내의 모든 메서드들을 반드시 재정의 해야 한다.

인터페이스의 다중 상속

  • 인터페이스는 콤마(,)로 연결하여 여러 개를 동시에 상속 받을 수 있다.
public class Monster implements Fight, Move{

}
  • 필요한 경우 다른 클래스와 동시에 상속받을 수 있다.
public class Monster extends User implements Fight, Move{

}

0개의 댓글