Junior — Middle
Wat is het verschil tussen een interface en het type Any in de context van de programmeertaal?
sobes.tech AI
Antwoord van AI
In Go zijn interface{} (lege interface) en any synoniemen: any is gewoon een alias voor interface{}.
interface{}is een interface zonder methoden, die een waarde van elk type kan bevatten.anyis geïntroduceerd in Go 1.18 voor meer gemak en leesbaarheid van de code, vooral met generics.
Voorbeeld:
var a any = 42
var b interface{} = "hallo"
fmt.Println(a) // 42
fmt.Println(b) // hallo
Verschillen tussen een interface met methoden en any:
- Een interface met methoden vereist dat het type deze methoden implementeert.
any(lege interface) vereist niets en is geschikt voor het opslaan van elke waarde.
Kortom, any is gewoon een handigere naam voor de lege interface interface{}.