Sobes.tech
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éž.