Junior — Middle
Kā noteikt konkrētu objekta tipu, kas realizē interfeisu?
sobes.tech AI
Atbilde no AI
Go valodā, lai noteiktu konkrētu objektu, kas realizē interfeisu, tiek izmantots tipa apgalvojums (type assertion) vai tipa pārslēdzējs (type switch).
Tipa apgalvojuma piemērs:
var i interface{} = someInterfaceValue
if v, ok := i.(ConcreteType); ok {
// v ir ConcreteType tips
fmt.Println("Tas ir ConcreteType", v)
} else {
fmt.Println("Cits tips")
}
Tipa pārslēdzēja piemērs:
switch v := i.(type) {
case ConcreteType:
fmt.Println("Tas ir ConcreteType", v)
case AnotherType:
fmt.Println("Tas ir AnotherType", v)
default:
fmt.Println("Nezināms tips")
}