Junior — Middle
Kako odrediti tačan tip objekta koji implementira interfejs?
sobes.tech АИ
Одговор од АИ
У језику Go, за одређивање конкретног типа објекта који имплементира интерфејс, користи се изјава о типу (type assertion) или прекидач типа (type switch).
Пример са изјавом о типу:
var i interface{} = someInterfaceValue
if v, ok := i.(ConcreteType); ok {
// v има тип ConcreteType
fmt.Println("Ово је ConcreteType", v)
} else {
fmt.Println("Другај тип")
}
Пример са прекидачем типа:
switch v := i.(type) {
case ConcreteType:
fmt.Println("Ово је ConcreteType", v)
case AnotherType:
fmt.Println("Ово је AnotherType", v)
default:
fmt.Println("Непознат тип")
}