오늘은 자바의 인터페이스(interface) 를 사용하는 이유에 대해 알아보겠습니다.
먼저, 인터페이스란 무엇일까요?
자바에서 인터페이스는 클래스들이 따라야 할 기능의 틀(명세) 을 정의해 놓은 일종의 규약입니다. 즉, 어떤 기능을 제공해야 하는지를 명시해두는 것이죠. 인터페이스는 메소드의 선언만 포함하고, 실제 로직은 구현하지 않습니다.
이렇게 만들어진 인터페이스는 서비스 클래스나 구현 클래스에서 실제 로직을 작성하게 됩니다.
이 구조는 바로 다형성(Polymorphism) 과 밀접한 관련이 있습니다.
상속 관계에 있는 여러 클래스들이 같은 인터페이스를 구현하면서, 각각의 클래스에서 자신만의 방식으로 메소드를 구현할 수 있게 됩니다.
그런데 만약 우리가 인터페이스 없이, 클래스마다 반복해서 같은 메소드들을 정의하고 공통된 코드를 작성한다면 어떻게 될까요?
코드가 중복되고, 가독성도 떨어지며, 유지보수가 매우 어려워집니다. 하나의 기능을 수정하려면 모든 클래스에서 일일이 코드를 찾아 고쳐야 하기 때문이죠.
그래서 우리는 공통 기능을 정의한 인터페이스를 만들고, 각 클래스에서는 그 기능을 자기 방식대로 구현하는 방식을 선택하는 겁니다.
결과적으로 인터페이스는 코드의 재사용성, 유지보수성, 그리고 유연한 설계를 가능하게 해줍니다.
이게 바로 자바에서 인터페이스를 사용하는 이유입니다.
'JAVA' 카테고리의 다른 글
| [Java] Jave 의 컬렉션 프레임워크는 무엇일까? (2) | 2025.04.23 |
|---|---|
| [Java] Generics은 무엇이고 왜 사용할까? (0) | 2025.04.22 |
| [Java] GC(가비지 컬렉션)이란? (1) | 2025.04.21 |
| [Java] Java 의 주요 특징 (2) | 2025.04.17 |
| [JDK | JRE] JDK 와 JRE 의 차이는 무엇일까? (2) | 2025.04.16 |