Junior — Middle
Евтини ли са интерфейсите без методи и интерфейсът, който допуска всякакви типове?
sobes.tech AI
Отговор от AI
В Go интерфейсът, който не съдържа методи, се нарича празен интерфейс interface{}. Той е универсален тип, който може да съдържа стойност от всеки тип.
Интерфейсът без методи и интерфейсът, допускащ всякакви типове, по същество са еднакви, защото празният интерфейс не налага никакви ограничения върху типовете, които може да съдържа.
Пример:
var x interface{} // празен интерфейс
x = 42 // може да се присвои int
x = "здравей" // може да се присвои string
По този начин, празният интерфейс е начин в Go да се изрази "всеки тип". Интерфейсът без методи и интерфейсът, допускащ всякакви типове, са едно и също нещо.