Web/Java

[Java] 인터페이스

hikr90 2025. 1. 9. 21:52

# 인터페이스

- 클래스 간 중재자 역할을 수행한다. (기능만 있는 설계도와 같다.)

- 클래스에서 다중 상속을 지원할 수 없어 다중 상속의 대체 용도로 개발되었다.

- implements 키워드를 사용한다.

 

public interface 인터페이스명 {
     구현부가 없는 메소드 혹은 상수
}

 

[참고] 추상 메소드의 첫글자는 대문자여야하며, abstract는 옵션이다.

 

 

​인터페이스의 역할 

인터페이스는 같은 목적하에 같은 기능을 제공하는 역할을 수행한다.

 

 

인터페이스의 특징

특징 설명
다형성 - 다형성이란, 같은 범주 내에서 각각의 형태를 가질 수 있는 성질이다.
- 큰 객체 내에 작은 객체들을 대입하여 서로 다른 각각의 결과를 얻을 수 있다.
다중 상속 - 일반적인 클래스와 다르게, 인터페이스는 메소드의 직접적인 구현부가 없다.
- a와 b 두가지의 부모 클래스를 상속받는다고 가정했을 때, 양쪽에 같은 클래스의 명칭이 존재할 경우
- 자식클래스에서 메소드가 어떤 부모클래스의 메소드인지 명시하기가 어렵다.
- 반면에 인터페이스는 구현부를 자식클래스에서 따로 재정의해야하므로 인터페이스 자체에서 중복될 문제가 없다.

 

 

[참고] 인터페이스의 다중 상속

- 인터페이스는 extends 키워드로 다중 상속이 가능하다.

public interface 인터페이스명 extends 인터페이스명 , 인터페이스명... {
     구현부가 없는 메소드 혹은 상수
{

 

'Web > Java' 카테고리의 다른 글

[Java] 스레드  (0) 2025.01.09
[Java] 에러  (0) 2025.01.09
[Java] 상속  (0) 2025.01.09
[Java] 클래스  (0) 2025.01.09
[Java] 객체지향  (0) 2025.01.09