Первое - это объявление интерфейса с объявленным в нем методом method()
.
type MyInterface interface{
Method()
}
Второе - переменная с типом [] interface {} не является интерфейсом!Это фрагмент, тип элемента которого является интерфейсом {}
type MyInterface []interface{
Method()
}
Плюс, переменная с типом [] interface {} имеет определенный макет памяти, известный во время компиляции.