Junior — Middle
Aký je rozdiel medzi deklaráciou prázdneho rozhrania a aliasom typu v programovacích jazykoch?
sobes.tech AI
Odpoveď od AI
V jazyku Go je prázdne rozhranie (interface{}) typ, ktorý môže obsahovať hodnotu akéhokoľvek typu, pretože všetky typy implementujú prázdne rozhranie. Používa sa na ukladanie dát neznámeho typu.
Alias typu (type Alias = OriginalType) je jednoducho iné meno pre existujúci typ, nevytvára nový typ, ale umožňuje používať pohodlnejšie alebo zrozumiteľnejšie meno.
Hlavné rozdiely:
- Prázdne rozhranie je univerzálny kontajner pre akékoľvek hodnoty.
- Alias typu je synonymum existujúceho typu, nemení správanie.
Príklad:
var x interface{} = 42 // x môže byť akéhokoľvek typu
type MyInt = int // MyInt je alias pre int
var y MyInt = 10