본문 바로가기

JAVA

[ JAVA ] 인터페이스(interface) - 특정 행위에 대한 추상화

 

 

인터페이스(interface)

  • 특정 행위에 대한 추상화
  • 물리적 형태는 class와 동일하나 선언방법에 차이가 있다.
  • 행위를 좀 더 쉽게 사용하기 위해서 만들어준다.
  • 상속받는 클래스는 행위를 정의해줘야만 한다.
  • 필드 정의는 가능하나 의미를 가지지는 않는다.
  • 내용이 없는 메서드를 생성한다.
  • 추상화되지만  abstract를 적어주지 않는다.
  • 인터페이스를 상속받는 클래스는 인터페이스 내의 행위를 할 수 있다.
  • 클래스는 상속하는 것을 나는 곧 너라는 의미로 인터페이스를 상속하는 것은 특정 행위를 할 수 있다는 의미로 해석되어 두 상속은 완전이 다른 의미를 가진다.

 

 

인터페이스 생성

 

[ public ] interface 인터페이스이름 { ... }

 

 

상수 필드 선언

 

[ public static final ] 타입 상수이름 = 값;

 

 

추상 메소드 선언

 

[ public ] 리턴타입 메소드이름(매개변수, ... );

 

 

인터페이스 구현

 

public class 구현클래스이름 implements 인터페이스이름 {
	
    @Override
	// 인터페이스에 선언된 추상 메서드의 실체 메소드 선언
}

 

 

다중 인터페이스 구현

 

public class 구현클래스이름 implements 인터페이스A, 인터페이스B {
	
    @Override
	// 인터페이스A에 선언된 추상 메서드의 실체 메소드 선언
    // 인터페이스B에 선언된 추상 메서드의 실체 메소드 선언
}