인터페이스란 서로 다른 하드웨어 장치들이 상호 접속하여 데이터를 주고받을 수 있는 규격을 말한다.
인터페이스의 개념이 소프트웨어에도 적용되어 규격화된 부품 모듈로 만들고 서로 인터페이스가 맞는 모듈을 조립하듯이 응용프로그램을 작성할 수 있다.
자바의 인터페이스
- 모든 메소드가 추상 메소드이다.
- 상수 필드만 포함 가능하다.
- 다중 상속이 가능하다.
- 모든 메소드는 Public이며 생략이 가능하다.
- 상수도 public static final을 생략하여 선언할 수 있다.
- 다른 인터페이스에 상속될 수 있다.
인터페이스 상속
인터페이스끼리 상속할 때는 extends를 사용하며 클래스에서 상속받을 때에는 implements를 사용한다.
interface I1{
}
interface I2{
}
interface I3 extends I1,I2{ //인터페이스 상속
}
class c1 implements I1,I2{ //클래스에서 상속
}
인터페이스 사용 예제
interface MP3{
void play();
void stop();
}
interface Telephon{
void call();
void hangUp();
}
public class SmartPhon implements MP3, Telephon{
public void play() {
System.out.println("음악 재생");
}
public void stop() {
System.out.println("음악 종료");
}
public void call() {
System.out.println("전화 걸기");
}
public void hangUp() {
System.out.println("전화 끊기");
}
public static void main(String[] args) {
SmartPhon s = new SmartPhon();
s.call();
s.play();
}
}
'프로그래밍 > 자바' 카테고리의 다른 글
자바 제네릭(generic) (0) | 2019.02.23 |
---|---|
자바 컬렉션(Collection)과 Iterator (0) | 2019.02.22 |
자바 추상 클래스(abstract) (0) | 2019.02.21 |
자바의 접근 지정자 (0) | 2019.02.20 |
객체 지향 프로그래밍(OOP)이란 (0) | 2019.02.14 |