Что представляет собой пустой интерфейс в Go и что произойдёт, если передать его в качестве аргумента функции?

В Go интерфейс может не содержать методов — такой интерфейс называется пустым интерфейсом interface{}.

Короткий ответ

Что ответить на собеседовании

В Go интерфейс может не содержать методов — такой интерфейс называется пустым интерфейсом interface{}. Он не определяет никаких методов и может принимать значение любого типа, так как все типы реализуют пустой интерфейс по умолчанию.

Подробный разбор

Ответ с пояснениями

В Go интерфейс может не содержать методов — такой интерфейс называется пустым интерфейсом interface{}. Он не определяет никаких методов и может принимать значение любого типа, так как все типы реализуют пустой интерфейс по умолчанию.

Пример пустого интерфейса:

var x interface{}
x = 42
x = "строка"

Таким образом, функция может принимать или возвращать пустой интерфейс, что позволяет работать с любыми типами, но внутри интерфейса методов нет.

Практика в реальном времени

Подготовьтесь к следующему собеседованию

Interview Boost учитывает вакансию, резюме и технологии и помогает сформулировать ответ прямо во время интервью.

Начать подготовку