개발자공부 (2021.11~현재)/용어정리

[Java] 자바에서 인터페이스의 기능은?

purplecloud 2021. 11. 16. 18:12

자바는 다중 상속(자식클래스가 여러 부모클래스를 상속하는 것)을 지원하지 않으므로 이를 해결하고자 다중 상속 기능을 구현하기 위한 기능으로 인터페이스를 사용한다.

 

- 다른 클래스를 작성할때 기본이 되는 틀을 제공하면서, 다른 클래스 사이의 매개 역할을 담당하는
    일종의 추상 클래스와 비슷
- 인터페이스는 추상 메소드와 상수만을 포함할 수 있음
    -> 인스턴스 메소드, static 메소드도 포함(jdk8)
✔ 인터페이스의 모든 필드는 public static final 이어야 함
✔ 인터페이스의 모든 메소드는 public abstract 이어야 함

즉, 인터페이스의 변수는 모두 상수이다. 또한 인터페이스의 메소드는 추상 메소드로 반드시 

클래스에서의 상속이나 객체 생성 시에 인터페이스의 모든 메소드를 오버라이드 하여 사용해야 한다.

 

✨ 만약 자바의 상속과 인터페이스 구현을 동시에 하려면?
    class 클래스명 extends 부모클래스명 implements 인터페이스명{
     ...
    }
✨ 만약 여러개의 인터페이스 구현을 동시에 하려면?
     class 클래스명 implements 인터페이스명, 인터페이스명, 인터페이스명 ..{
     ...
    }