본문 바로가기

JAVA

인터페이스

인터페이스

일반적으로 서로 다른 하드웨어 장치들이 상호접속하여 데잍를 주고받을 수 있는 규격.

Java에서는 추상 클래스와 거의 비슷한 메커니즘을 인터페이스라는 기능을 사용하여 표현할 수 있다.

 

▶ 인터페이스 선언

interface iVehicle{
	void show(); //추상메소드
}

클래스를 선언하는 방법과 유사하지만, 'class' 대신 'interface' 키워드를 사용한다.

 

인터페이스 선언 규칙

- 인터페이스의 멤버는 추상메소드와 상수로만 구성된다.

- 모든 메소드는 public이며 생략이 가능하다.

- 인터페이스의 객체를 생성할 수 없다.

- 다른 인터페이스에 상속될 수 있다.

- 인터페이스도 레퍼런스 변수의 타입으로 사용이 가능하다.

 

 

▶ 인터페이스 구현

public class Car implements iVehicle{
	public void show(){
    	//코드작성...
    }
}

인터페이스의 추상 메소드를 클래스에서 구현하는 것이다.

이때 반드시 인터페이스의 모든 추상메소드를 구현하여야 한다.

 

 - 인터페이스 다중 구현

콤마로 인터페이스를 구분하여 나열한다.

 

 - 클래스 상속과 함께 인터페이스 구현

슈퍼클래스의 상속과 동시에 인터페이스를 구현하는 것도 가능하다.

 

▶ 인터페이스와 추상클래스 차이점

인터페이스 추상클래스
모든 메소드가 추상 메소드이다. 일반 메소드를 포함할 수 있다.
상수는 필드만 포함이 가능하다. 상수, 변수 필드 포함이 가능하다
다중 상속이 가능하다. 모든 서브클래스에 공통된 메소드가 있는 경우 추상클래스가 적합하다.

 

 

'JAVA' 카테고리의 다른 글

필터 (Filter)  (0) 2020.05.12
Servlet (서블릿)  (0) 2020.05.08
추상 클래스  (0) 2020.04.27
메소드 오버라이딩  (0) 2020.04.27
상속(extends)  (0) 2020.04.22