Junior — Middle
De quelles manières peut-on vérifier si la structure correspond à l'interface donnée?
sobes.tech IA
Réponse de l'IA
В Go проверка соответствия структуры интерфейсу происходит неявно — если структура реализует все методы интерфейса, то она ему соответствует.
Для явной проверки на этапе компиляции часто используют компиляционную проверку с помощью присваивания:
type MyInterface interface {
DoSomething()
}
type MyStruct struct {}
func (m MyStruct) DoSomething() {}
// Компиляционная проверка
var _ MyInterface = (*MyStruct)(nil)
Если MyStruct не реализует MyInterface, компилятор выдаст ошибку. Это удобный способ убедиться, что структура соответствует интерфейсу без запуска программы.