4.4.4 타입 변환
인터페이스 타입으로 선언한 변수는 실제 타입과 관계없이 인터페이스에서 정의한 메서드를 가지기만 하면 어떤 값이라도 동적으로 할당받아 사용할 수 있다. 하지만 런타임 시 인터페이스 변수에 할당된 값을 실제 타입으로 변환해야 할 때가 종종 있다.
인터페이스 변수에 할당된 값을 실제 타입으로 변환하는 방법은 세 가지가 있다.
1. 타입 어설션
2. switch 문
3. reflect 패키지
reflect 패키지를 사용해서 실제 타입으로 변환하는 방법은 7장에서 다룬다. 여기서는 타입 어설션과 switch 문을 사용해서 타입을 변환해 보자.
Note 어설션
어설션(assertion)은 보통 프로그램이 실행될 때 자체적인 검사에 사용되는 루틴이나 매크로를 의미한다.