자바/기본적인 개념

인터페이스 다형성

백_곰 2021. 12. 8. 20:41

1. 인터페이스 다형성

- 상속에서 다형성을 공부할 때, 자손 클래스의 인스턴스를 조상 타입의 참조변수로

참조하는 것이 가능하다는 것을 배웠다. 인터페이스 또한 그렇다.

 

 

( 단, c 참조 변수로는 c 인터페이스에서 정의한 것만 참조 가능하다. )

 

 

 

2. 인터페이스 타입의 활용

( 위의 인터페이스 타입의 method() 함수를 지정할 수 있는데, 리턴 타입이 인터페이스

라는 것은 메서드가 해당 인터페이스를 구현한 클래스의 인스턴스를 반환한다는 것을

의미한다. )

 

( 또한 아래의 그림처럼 매개변수를 인터페이스의 타입으로 지정할 수 있는데, 이는 

인터페이스를 구현한 클래스의 인스턴스를 전달하라는 소리와 마찬가지이다. )

 

 

 

 

3. 이해를 돕기 위한 예제(1)

 

Q) 19번째 줄에서 왜 오류가 날까?

A) 리턴 타입이 인터페이스 라는 것은 메서드가 해당 인터페이스를 구현한

클래스의 인스턴스를 반환한다는 것을 의미하는데, 위 HTMLParser 클래스에

implements Parseable이 없기 때문에 오류가 난다.