-
[Java] 인터페이스(interface)프로그래밍/JAVA 2022. 8. 8. 22:46728x90
자바는 다중상속을 지원하지 않으므로 인터페이스를 사용해서 다중상속을 구현할 수 있다. 인터페이스는 다른 클래스를 작성할 때 기본이 되는 틀을 제공하면서, 다른 클래스 사이의 매개 역할을 담당하는 일종의 추상클래스와 비슷한 개념을 가지고 있다. 인터페이스는 추상 메소드와 상수만을 포함 할 수 있고 JDK8이상부터는 인스턴스 메소드, static메소드도 포함한다.
인터페이스는 다중 상속뿐만 아닌 장점도 존재한다. 개발 시 일관되고 정형화된 개발을 위한 표준화가 가능하고 개발시간 단축의 이점이 있다.
인터페이스 선언
인터페이스를 선언하기 위해서는 interface 키워드를 사용한다.
접근제어자 interface 인터페이스명{ // 인터페이스의 모든 필드는 public static final // 인터페이스의 모든 메소드는 public abstract public static final 타입 상수명 = 값; public abstract 메소드명(매개변수1, 매개변수2...); }
인터페이스 구현
상속과 인터페이스의 구현을 동시에 하기위해서는 extends 키워드와 implements 키워드 순으로 작성해주면되고 다중상속을 표현하고 싶다면 인터페이스 클래스를 콤마(,)를 붙여 나열하면 된다.
class 클래스명 implements 인터페이스명{ ... } // 자바의 상속과 인터페이스의 구현을 동시에 하려면 class 클래스명 extends 부모클래스명 implements 인터페이스명{ ... } // 여러개의 인터페이스를 구현하려면 class 클래스명 extends 부모클래스명 implements 인터페이스명, 인터페이스명, 인터페이스명 ... { ... }
728x90'프로그래밍 > JAVA' 카테고리의 다른 글
[Java] List 컬렉션 클래스 (0) 2022.08.09 [Java] 컬렉션 프레임워크(collection framework) (0) 2022.08.09 [Java] 추상 클래스(abstract class) (0) 2022.08.08 [Java] Wrapper class (0) 2022.08.08 [Java] 다형성(polymorphism) (0) 2022.08.07