더북(TheBook)

빈 인터페이스

interface{} 타입은 메서드를 정의하지 않은 인터페이스이다. interface{}에는 정의된 메서드가 없어서 어떤 값이라도 interface{}로 사용할 수 있다. 즉, 함수나 메서드의 매개변수를 interface{} 타입으로 정의하면 어떤 값이든 전달받을 수 있다.

func main() {
   r := rect{3, 4}
    c := circle{2.5}
    display(r)             // width: 3.000000, height: 4.000000
    display(c)             // radius: 2.500000
    display(2.5)           // 2.5
    display(“rect struct”) // rect struct
}
 
func display(s interface{}) {
    fmt.Println(s)
}

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.