Junior — Middle
Jsou rozhraní bez metodů a rozhraní, které umožňuje jakékoli typy, ekvivalentní?
sobes.tech AI
Odpověď od AI
V jazyce Go se rozhraní, které ne obsahuje žádné metody, nazývá prázdné rozhraní interface{}. Je to univerzální typ, který může obsahovat hodnotu jakéhokoliv typu.
Rozhraní bez metod a rozhraní, které umožňuje jakékoliv typy, jsou v podstatě stejné, protože prázdné rozhraní neklade žádná omezení na typy, které může obsahovat.
Příklad:
var x interface{} // prázdné rozhraní
x = 42 // lze přiřadit int
x = "ahoj" // lze přiřadit string
Tímto způsobem je prázdné rozhraní způsob, jak v jazyce Go vyjádřit "jakýkoliv typ". Rozhraní bez metod a rozhraní, které umožňuje jakékoliv typy, jsou totéž.