프로그래밍
자바 인터페이스(interface)란?
밍딩이
2015. 7. 28. 16:29
인터페이스(interface)란?
-일종의 추상클래스 추상클래스(미완성 설계도)보다 추상화 정도가 높다
-실제 구현된 것이 전혀 없는 기본 설계도 (알맹이 없는 껍데기)
-추상메서드와 상수만을 멤버로 가질 수 있다
-인스턴스를 생성할 수 없고, 클래스 작성에 도움을 줄 목적으로 사용된다
- class 대신 'interface' 를 사용한다는 것 외에는 클래스 작성과 동일하다
-하지만 , 구성요소(멤버)는 추상메서드와 상수만 가능
(public / static / final )
static은 객체를 만들지 않고 사용할 수 있다
final 마지막 / 변수앞에 쓰이면 (상수처럼)
모든 메서드는 (public / abstract)
interface 인터페이스 이름 {
public static final 타입 상수이름 = 값;
public abstract 메서드 이름(메게변수목록);
}
public을 생략할 수 있는데
다 똑같이 받아들임
인터페이스의 구현
-인터페이스를 구현하는 것은 클래스를 상속받는 것 과 같다
다만 'extends'대신에 'implements'를 사용함
상속하나에 인터페이스 하나 가능함
public class Sword extends Weapon implements Test, Test3
단일 상속의 단점을 보완 -> 인터페이스를 사용
인터페이스 여러개 가능