본문 바로가기

JAVA 프로그래밍

Interface(인터페이스)

/*인터페이스 구성
interface 인터페이스 이름 [extends 부모인터페이스 이름]
{
 상수 선언
 바디 없는 메소드 선언
}
*/
interface Vehicle {
 public void printNumber();
}


--Yacht.java
public class Yacht implements Vehicle{   //인터페이스 상속(구현)
 int yachtNum;
 public void printNumber()     //인터페이스에서 정의된 메소드 구현
 {
  System.out.println("요트 등록번호 : "+yachtNum);
 }
 public Yacht(int n)       // 생성자
 {
  yachtNum=n;
 }
}


--Car.java
public class Car implements Vehicle{  //인터페이스 상속(구현).
 int carNum;
 public void printNumber()    //인터페이스에서 정의된 메소드 구현
 {
  System.out.println("자동차 등록번호 : "+carNum);
 }
 public void drive()
 {        
            //자동차 관련된 메소드
 }
 public Car(int n)      //생성자
 {
  carNum = n;
 }
}


/*
  인터페이스는 다중 상속을 지원하기 위해 사용된다.
  - static final형의 상수
  - 본체를 구현하지 않은 메소드 정의
 
  인터페이스가 클래스와 다른 점
  - 인터페이스는 오직 상수와 메소드 헤더만 선언할 수 있다.
  - 맴버변수를 선언할 수 없고, 메소드의 바디도 정의할 수 없다.
  - 인터페이스를 클래스의 명세서라고 볼 수도 있다.
 */
public class MyVehicle {
 public static void main(String[] args) {
  Car myCar = new Car(8568);
  myCar.printNumber();
 
  Yacht myYacht = new Yacht(679004);
  myYacht.printNumber();
 }
}

'JAVA 프로그래밍' 카테고리의 다른 글

내부 클래스  (0) 2009.10.07
추상 클래스  (0) 2009.10.07
static 메소드  (0) 2009.10.07
CallingThis  (0) 2009.10.07
Inheritance(상속)  (0) 2009.10.07