본문 바로가기
Java

JAVA Interface(작성중)

by titlejjk 2023. 5. 3.

 자식 클래스가 여러 부모 클래스를 상속받을 수 있다면, 여러 동작들을 다양하게 수행할 수 있다는 장점을 가지게 된다. 하지만 클래스를 이용하여 다중 상속을 할 경우 메소드 출처의 모호성 등 여러가지 문제가 발생할 수 있어 자바에서는 클래스를 통한 다중 상속은 지원하지 않는다.

하지만 이런 다중 상속의 이점을 버릴 수는 없기에 자바는 인터페이스(interface)라는 것을 통해 다중 상속을 지원하고 있다.

인터페이스는 다른 클래스를 작성할 때 기본이 되는 틀을 제공하며, 다른 클래스 사이에 중간 매개 역할까지 담당하는 일종의 추상 클래스이다.

자바에서 추상 클래스는 추상 메소드뿐만 아니라 생성자, 필드, 일반 메소드도 포함하지만 인터페이스는 오로지 추상 메소드와 상수만 가질 수 있다.

 

자바에서 인터페이스를 사용하는 이유는 크게 두 가지이다. 첫번째는 다형성을 구현하기 위함, 두 번째는 강제성을 부여하기 위함이다. 인터페이스를 구현하는 클래스는 인터페이스에서 정의한 모든 메서드를 구현해야 하며, 이를 통해 일관된 동작을 보장한다.

 

 

인터페이스의 선언

더보기

접근제어자 interface 인터페이스이름{

          //추상 메서드

          public void 메서드명();

          public void 메서드명();

          //상수

          public static final 데이터타입 변수명 = 변수값; //field는 static final만 가질수 있으며 생략가능하다

}

 

'Java' 카테고리의 다른 글

JAVA ArrayList  (0) 2023.05.04
JAVA Generic Class  (0) 2023.05.04
JAVA 추상클래스와 인터페이스의 차이  (0) 2023.05.03
JAVA Inner class  (0) 2023.05.03
JAVA Extends  (0) 2023.05.02

댓글