Sobes.tech
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")
}