[이클립스,자바]인터페이스(interface) 개념과 활용

   

인터페이스(interface)란? 상수와 메소드 선언들의 집합이다.

앞서 우리는 상수와 메소드 선언을 하는 클래스인 추상클래스에 대해서 정리했었는데, 인터페이스는 또 뭘까요?

   

추상클래스는 추상 메소드 선언 외에도 멤버변수나 일반메소드를 가질수 있는 반면에, 인터페이스는 오직 선언만 하는 추상메소드와 상수만으로 구성됩니다. 그대신, 클래스는 상위 클래스를 오직 하나만 가질 수 있는 반면에 인터페이스는 여러 개의 인터페이스를 가질 수 있어서, 자바에서 불가능한 다중상속(multiple inheritance)의 구현을 도와줍니다.

   

   

   

   

위의 그림에서 볼 수 있듯이, 인터페이스를 활용하면 자바에서도 다중상속의 형태로 프로그래밍을 할 수 있습니다. JDK에는 클래스 라이브러리 외에도 400여개 이상의 인터페이스도 제공되고 있습니다.

   

인터페이스 선언 및 사용

Public interface 인터페이스이름 [extends 상위인터페이스명 … ] {
상수선언
메소드선언
}

위와 같은 형태로 선언되며, 클래스에서 인터페이스를 참조할 때에는 클래스 생성 시에 implements 예약어로 불러올 수 있습니다.

[public/final/abstract] class 클래스이름 extends 상위클래스이름 implements 인터페이스이름 … {
클래스 구성요소 (멤버변수선언, 생성자, 메소드 선언 등)

// 이 클래스에서 인터페이스에 선언된 메소드를 오버라이딩하여 선언해야 함
}

이런 인터페이스는 주로 이벤트처리나 스레드 프로그램에서 사용되므로 추후 이 부분을 공부할 때에 참고하시기 바랍니다.

   

이클립스에서 인터페이스 활용 예제

  • 다들 이렇게 결과가 나오나요? 이렇게 이클립스에서 소스를 작성하는 것이 다른 에디터에서 작성하는 것보다 편리한 기능들을 제공합니다.

       

    인터페이스의 상속

    인터페이스를 정의할 때에도 클래스와 마찬가지로 상속을 받아올 수 있으며, 클래스와는 달리 상속대상이 여러 개일 수 있습니다.

public interface 인터페이스이름 extends 상속받을 인터페이스이름, 인터페이스이름, … {
상수 및 메소드선언
}

   

이렇게 인터페이스에 대해 정리를 해 보았습니다. 프로그래밍 공부는 무엇보다 실습이 중요한 것 같네요.

프로그래밍은 '백문이불여일타'라고 하지요. 많은 소스를 직접 짜 보는 것이 가장 좋은 공부입니다.

그러면, 이 자바 공부를 다 마치고 훌륭한 프로그램을 짤 때까지 파이팅 하자구요~


 - 일반행정직

 - 검찰직공무원

 - 경찰공무원

 - 교정직공무원

 - 사회복지직공무원

 - 환경직공무원

 - 감사직공무원

 - 화공직공무원

 - 농업직공무원

 - 보건직공무원

 - 사서직공무원

 - 외무영사직공무원

 - 임업직공무원

 - 전산직공무원

 ● 유망자격증 기출문제

 - 소방공무원

 - 교육행정직공무원

 - 세무직공무원

 - 10급공무원

 - 토목직공무원

 - 간호직공무원

 - 건축직공무원

 - 농업연구사

 - 농촌지도사

 - 보호직공무원

 - 식품위생직공무원

 - 의료기술직공무원

 - 전기직공무원

 - 출입국관리직공무원

 ● 공무원 최신자료 받기


 - 4대보험관리사

 - 결혼상담사

 - 공인중개사

 - 노인여가건강관리사

 - 농산물품질관리사

 - 도로교통사고감정사

 - 사회복지사1급

 - 소비자전문상담사

 - 실버시터상담지도사

 - 아동심리상담사

 - 영재놀이지도사

 - 주택관리사

 - 치매예방관리사

 - 저작권관리사

 - 일반행정사

 - PIA사설정보관리사

 - 건강식이요법사

 - 경호(경비)지도사

 - 노인심리상담사

 - 노후생활설계사

 - 다문화가정상담사

 - 속기사

 - 심리상담사

 - 연예인관리사

 - 장례지도사

 - 직업상담사

 - 유기농관리사

 - [방과후]교육마술지도사

-[방과후]창의사고력지도사

 - [학점은행제]사회복지사

  1. 2011.04.06 06:23 신고 [Edit/Del] [Reply]
    이 글을 이해할 수 있는 날이 빨리 왔으면 좋겠습니다^^
    오늘도 좋은 하루 보내세요~
  2. 시랴
    2011.06.15 02:43 [Edit/Del] [Reply]
    이해하는데에 많은 도움이 되었습니다 ^^

댓글을 남겨주세요

Name *

Password *

Link (Your Homepage or Blog)

Comment

Secret