[Java 12-2 BoatCarRealApp]

임승현·2022년 10월 18일

Java

목록 보기
43/126
package realization;

public class BoatCarRealApp {
	public static void main(String[] args) {
		//BoatCarReal boatCarReal=new BoatCarReal();
		//클래스가 상속받은 모든 인터페이스로 참조변수를 생성하여 자식클래스의 객체 저장 가능
		// => 묵시적 객체 형변환에 의해 오버라이드 선언된 자식클래스의 메소드 호출
		// => 인터페이스에 따라 호출 가능한 메소드가 다름 
		BoatCar boatCar=new BoatCarReal();
		//Boat boatCar=new BoatCarReal();
		//Car boatCar=new BoatCarReal();
		
		boatCar.floating();
		boatCar.navigate();
		boatCar.run();
	}
}
package realization;

public interface Boat {
	void navigate();
}
package realization;

public interface Car {
	void run();
}
package realization;

//인터페이스는 다른 인터페이스를 상속받아 작성 가능
// => extends 키워드로 상속받으며 다중 상속 가능
public interface BoatCar extends Boat,Car {
	void floating();
}
package realization;

public class BoatCarReal implements BoatCar {
	@Override
	public void navigate() {
		System.out.println("바다를 향해하는 능력");
	}

	@Override
	public void run() {
		System.out.println("땅위를 달리는 능력");
	}

	@Override
	public void floating() {
		System.out.println("공중에 떠 있는 능력");
	}
}

0개의 댓글