17.3. 프로그램언어 고(Go)의 인터페이스 형 변환

프로그램언어 고(Go)의 인터페이스 형 변환방법 프로그램언어 고(Go)에서 인터페이스 형 변환은 interface{} 형을 사용하여 형 변환을 할 수 있습니다. interface{}는 빈 인터페이스로 어떤 형이든 할당할 수 있으며, 이를 사용하여 형 변환을 할 수 있습니다. package main import “fmt” func main() { var i interface{} i = “hello” s := i.(string) fmt.Println(s) i = 5 n := … Read more

17.2. 프로그램언어 고(Go)의 인터페이스 상속

프로그램언어 고(Go)의 인터페이스 상속방법 Go 언어의 인터페이스 상속 방법에 대해 한글로 설명 드리겠습니다. Go언어에서 인터페이스는 메서드의 시그니처(함수 프로토타입)만 정의할 수 있고, 구현부는 정의할 수 없습니다. 그래서 Go의 인터페이스는 duck typing을 사용합니다. 예를 들어 이런 인터페이스가 있다고 합시다. type Reader interface { Read(p []byte) (n int, err error) } Reader 인터페이스는 Read 메서드의 시그니처만 정의했습니다. Read … Read more

17.1. 프로그램언어 고(Go)의 인터페이스 생성과 활용

프로그램언어 고(Go)의 인터페이스 생성방법 고(Go)언어의 인터페이스 생성방법을 설명드리겠습니다. 고(Go)언어에서 인터페이스는 메소드의 집합을 정의하는 것입니다. 인터페이스를 정의할 때는 ‘type’ 키워드 뒤에 인터페이스 이름을 정의하고, 중괄호 안에 메소드 시그니처를 정의합니다. type 인터페이스이름 interface { 메소드1(인자1 타입1, 인자2 타입2) 반환형 메소드2(인자1 타입1) 반환형 } 인터페이스에 정의된 메소드들은 반드시 구현하는 구조체에서 구현해야 합니다. type 구조체명 struct { } func … Read more