Java(15)インタフェース2


おもちゃ番組


インタフェースを使用して簡単なおもちゃプログラムを作成します.例を見てみましょう.
おもちゃが3種類あります.おもちゃごとに異なる行為があります.例を見てみましょう.

おもちゃばかりなので、おもちゃというインターフェースを継承します.
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();
		
	}
}
しゅつりょく
クマです
腕と足を動かすことができます
馬景佳です.
腕と足を動かすことができます
ミサイルを発射できる.
飛行機です.
ライトを発射できます.
ミサイルを発射できる.
上のように出力が表示されます.

今日はここまで。


簡単にインタフェースを利用しておもちゃの機能を実現するプログラムを編纂した.これは非常に簡単な例です.