Senior
Go-da interfeyslər nədir? Növlər interfeysləri necə həyata keçirir?
sobes.tech Süni İntellekt
AI-dan cavab
Go dilində, interfeys davranışı təsvir edən metodlar toplusudur. Bir növ, interfeysdə elan olunan bütün metodları ehtiva edirsə, interfeysi açıq şəkildə göstərmədən implementasiya edir.
Bu, qeyri-adi interfeys tətbiqi adlanır. Bu sayədə daha çevik və genişlənə bilən kod yaza bilərsiniz.
Nümunə:
package main
import "fmt"
type Reader interface {
Read(p []byte) (n int, err error)
}
type File struct {}
func (f File) Read(p []byte) (n int, err error) {
// oxuma tətbiqi
return 0, nil
}
func main() {
var r Reader
f := File{}
r = f // File, Reader-i tətbiq edir
fmt.Println(r)
}
Burada, File tipi, lazım olan imzaya sahib Read metodu ilə Reader interfeysini tətbiq edir.