Sobes.tech
Junior — Middle

Ինչպե՞ս ցույց տալ Go-ում, որ կառուցվածքը իրականացնում է որոշակի ինտերֆեյս։

sobes.tech AI

Պատասխան AI-ից

В Go структура неявно реализует интерфейс, если она содержит все методы, объявленные в этом интерфейсе. Нет необходимости явно указывать, что структура реализует интерфейс — достаточно реализовать соответствующие методы.

Пример:

package main
import "fmt"

type Speaker interface {
    Speak() string
}

type Dog struct {}

func (d Dog) Speak() string {
    return "Woof!"
}

func main() {
    var s Speaker = Dog{} // Dog реализует интерфейс Speaker
    fmt.Println(s.Speak())
}

Здесь Dog реализует метод Speak(), поэтому он автоматически реализует интерфейс Speaker.