Software/Java

[Java] 인터페이스(interface)에 대한 설명과 예시

TGnCo 2025. 2. 7. 08:35

Java

 

 

자바 Interface란?

자바에서 interface는 클래스가 구현해야 할 메서드의 목록을 정의하는 추상적인 개념입니다. 인터페이스는 다중 상속을 지원하지 않는 자바에서 이를 대체하기 위해 사용되며, 클래스 간의 결합도를 낮추는 역할을 합니다.

 

 

Interface의 주요 특징

  • 인터페이스 내의 모든 메서드는 기본적으로 publicabstract입니다.
  • 인터페이스 내의 변수는 기본적으로 public static final로 선언됩니다.
  • 인터페이스를 구현하는 클래스는 해당 인터페이스의 모든 메서드를 반드시 구현해야 합니다.
  • 자바 8 이후로 인터페이스에는 default 메서드와 static 메서드를 포함할 수 있습니다.

 

Interface 예제 코드

interface Animal {
    void makeSound(); // 추상 메서드
}

class Dog implements Animal {
    @Override
    public void makeSound() {
        System.out.println("멍멍!");
    }
}

public class InterfaceExample {
    public static void main(String[] args) {
        Animal myDog = new Dog();
        myDog.makeSound();
    }
}

 

 

Interface의 활용

  • 다형성 지원: 인터페이스를 통해 서로 다른 클래스가 동일한 메서드를 다르게 구현할 수 있습니다.
  • 결합도 낮추기: 특정 클래스에 의존하지 않고 인터페이스를 통해 다양한 구현체를 사용할 수 있습니다.
  • 유지보수성 증가: 코드 변경 시 인터페이스만 수정하면 여러 클래스에 적용할 수 있어 유지보수가 용이합니다.

자바의 인터페이스는 객체 지향 프로그래밍에서 중요한 역할을 하며, 다양한 설계 패턴에서도 활용됩니다. 따라서 인터페이스를 적극적으로 활용하면 보다 유연하고 확장 가능한 코드를 작성할 수 있습니다.