Sobes.tech
Junior — Middle

Care este diferența dintre declararea unei interfețe goale și un alias de tip în limbajele de programare?

sobes.tech AI

Răspuns de la AI

În Go, interfața goală (interface{}) este un tip care poate conține o valoare de orice tip, deoarece toate tipurile implementează interfața goală. Este utilizată pentru stocarea datelor de tip necunoscut.

Aliasul de tip (type Alias = OriginalType) este pur și simplu un alt nume pentru un tip existent, fără a crea un nou tip, ci permițând utilizarea unui nume mai convenabil sau mai ușor de înțeles.

Diferențele principale:

  • Interfața goală este un container universal pentru orice valori.
  • Aliasul de tip este un sinonim pentru tipul existent, fără a schimba comportamentul.

Exemplu:

var x interface{} = 42 // x poate fi de orice tip

type MyInt = int // MyInt este un alias pentru int
var y MyInt = 10