Junior — Middle
Wie kann man den konkreten Typ eines Objekts bestimmen, das eine Schnittstelle implementiert?
sobes.tech KI
Antwort von AI
In Go wird zur Bestimmung eines Objekts eines bestimmten Typs, der eine Schnittstelle implementiert, die Typ-Aussage (type assertion) oder der Typ-Switch (type switch) verwendet.
Beispiel mit Typ-Aussage:
var i interface{} = someInterfaceValue
if v, ok := i.(ConcreteType); ok {
// v hat den Typ ConcreteType
fmt.Println("Dies ist ConcreteType", v)
} else {
fmt.Println("Anderer Typ")
}
Beispiel mit Typ-Switch:
switch v := i.(type) {
case ConcreteType:
fmt.Println("Dies ist ConcreteType", v)
case AnotherType:
fmt.Println("Dies ist AnotherType", v)
default:
fmt.Println("Unbekannter Typ")
}