Объявление интерфейса в Go
Интерфейс задают списком имен методов и их
типов, без тела. Запись начинается со слова
type, затем имя интерфейса и ключевое
слово interface, дальше фигурные скобки
с методами. У каждого метода только имя,
параметры и результат, как у объявления
функции без блока кода.
Объявим интерфейс с одним методом печати:
package main
type Printer interface {
Print()
}
func main() {
}
Имя Printer теперь обозначает тип интерфейса.
Его можно использовать в объявлениях переменных
и параметров, как имя структуры. Сам по себе
интерфейс не хранит поля: в нем перечислены
только требования к методам.
Метод без параметров пишут со скобками (),
метод с результатом получает тип после имени.
Несколько методов в одном интерфейсе перечисляют
друг под другом внутри тех же скобок.
Запишите интерфейс Greeter с методом
Greet без параметров и с результатом
типа string.
Дан следующий код:
package main
type Saver interface {
Save()
}
Добавьте метод Load без параметров
в тот же интерфейс.
Скажите, можно ли внутри объявления интерфейса написать тело метода с фигурными скобками.