Java(15) 인터페이스 2

3106 단어 JavaJava

장난감 프로그램

인터페이스를 사용해서 간단한 장난감 프로그램을 만들어 볼 것이다. 예제를 통해 알아보자!
3가지 종류의 장난감이 있다. 각 장난감은 수행할 수 있는 행동이 다르다. 예제를 통해 알아보자.

모두 장난감이기 때문에 toy라는 인터페이스를 상속 받는다.

Toy.java

package com.javalec.intertoy;

public interface Toy {

}

그 다음 각각 미사일, 불빛, 움직임에 해당하는 인터페스를 만들 것이다.

MoveArmLeg.java

package com.javalec.intertoy;

public interface MoveArmLeg extends Toy {
	void canMoveArmLeg();
}

Light.java

package com.javalec.intertoy;

public interface Light extends Toy {
	void canLight();
}

Missile.java

package com.javalec.intertoy;

public interface Missile extends Toy {
	void canMissile();
}

모든 인터페이스를 구현 했다면 이제 각각 장난감을 만들어주면 된다. 이또한 인터페이스를 사용하기 때문에 추상메소드를 꼭 재정의 해줘야한다.

MazingerToyClass.java

package com.javalec.intertoy;

public class MazingerToyClass implements Missile, MoveArmLeg {

	
	public MazingerToyClass() {
		System.out.println("마징가 입니다.");
		canMoveArmLeg();
		canMissile();
		System.out.println("==============================");
	}
	
	@Override
	public void canMoveArmLeg() {
		System.out.println("팔다리를 움직일 수 있습니다.");
	}

	@Override
	public void canMissile() {
		System.out.println();

	}

}

AirPlaneToyClass.java


package com.javalec.intertoy;

public class AirPlaneToyClass implements Missile, Light {

	public AirPlaneToyClass() {
		System.out.println("비행기 입니다.");
		canLight();
		canMissile();
		System.out.println();
	}
	
	@Override
	public void canLight() {
		System.out.println("불빛 발사 가능 합니다.");
	}

	@Override
	public void canMissile() {
		System.out.println("미사일을 발사 할 수 있습니다.");
	}

}

PoohToyClass.java

package com.javalec.intertoy;

public class PoohToyClass implements MoveArmLeg {

	public PoohToyClass() {
		System.out.println("곰돌이 입니다.");
		canMoveArmLeg();
		System.out.println();
	}
	
	@Override
	public void canMoveArmLeg() {
		System.out.println("팔다리를 움직일 수 있습니다.");
	}

}

이제 메인클래스에서 선언만 해주면 된다!

MainClass.java

package com.javalec.intertoy;

public class MainClass {
	public static void main(String[] args) {
		
		Toy pooh = new PoohToyClass();
		Toy mazinger = new MazingerToyClass();
		Toy airPlaToy = new AirPlaneToyClass();
		
	}
}

출력

곰돌이 입니다.
팔다리를 움직일 수 있습니다.

마징가 입니다.
팔다리를 움직일 수 있습니다.
미사일을 발사 할 수 있습니다.

비행기 입니다.
불빛 발사 가능 합니다.
미사일을 발사 할 수 있습니다.

위처럼 출력되는 것을 알 수 있다.

오늘은 여기까지..

간단하게 인터페이스를 이용해서 장난감의 기능을 구현하는 프로그램을 만들었다. 매우 간단한 예제이다.

좋은 웹페이지 즐겨찾기