Junior — Middle
Sú rozhrania bez metód a rozhranie, ktoré umožňuje akékoľvek typy, ekvivalentné?
sobes.tech AI
Odpoveď od AI
V jazyku Go sa rozhraním, ktoré ne obsahuje žiadne metódy, sa nazýva prázdne rozhranie interface{}. Je to univerztny typ, ktorý môže obsahovať hodnotu akéhokoľvek typu.
Rozhranie bez metód a rozhranie, ktoré umožňuje akékoľvek typy, sú v podstate rovnaké, pretože prázdne rozhranie nekladie žiadne obmedzenia na typy, ktoré môže obsahovať.
Príklad:
var x interface{} // prázdne rozhranie
x = 42 // môže byť priradené int
x = "ahoj" // môže byť priradené string
Týmto spôsobom je prázdne rozhranie spôsob, ako v jazyku Go vyjadriť "akýkoľvek typ". Rozhranie bez metód a rozhranie, ktoré umožňuje akékoľvek typy, sú to isté.