본문 바로가기

자바

interface가 interface를 implement

package main;

public interface Ainterface {
	public void alpha();
}

A 인터페이스

package main;

public interface Binterface extends Ainterface {
	public void beta();
}

 

A 인터페이스를 구현하는 B 인터페이스

 

package main;

public class Cclass implements Ainterface {

	@Override
	public void alpha() {
		System.out.println("Cclass에서의 alpha() 호출");

	}

}

A 인터페이스를 구현하는 C클래스

 

package main;

public class Dclass implements Binterface {

	@Override
	public void alpha() {
		System.out.println("Dclass에서의 alpha() 호출");

	}

	@Override
	public void beta() {
		System.out.println("Dclass에서의 beta() 호출");

	}

}

B 인터페이스를 구현하는 D클래스

 

결론 : D클래스는 A인터페이스의 메소드를 강제했다.

 

package main;

public class MainClass {
	public static void main(String[] args) {
		Ainterface a = new Cclass();
		a.alpha();

		Binterface b = new Dclass();
		b.alpha();
		b.beta();
	}
}

결과

 

 

'자바' 카테고리의 다른 글

HttpSession  (0) 2020.10.13
abstract interface  (0) 2020.10.12
오버라이딩  (0) 2020.10.11
상속  (0) 2020.10.11
소켓  (0) 2020.09.06