Junior — Middle
¿Puede una estructura en Go implementar una interfaz y cómo hacerlo?
sobes.tech AI
Respuesta de la IA
Sí, en Go una estructura puede implementar una interfaz. Para ello, la estructura debe tener todos los métodos declarados en la interfaz. En Go, la implementación de una interfaz no requiere una declaración explícita: si la estructura contiene los métodos necesarios, se considera que implementa automáticamente la interfaz.
Ejemplo:
package main
import "fmt"
type Speaker interface {
Speak() string
}
type Person struct {
Name string
}
func (p Person) Speak() string {
return "Hola, me llamo " + p.Name
}
func main() {
var s Speaker = Person{Name: "Ivan"}
fmt.Println(s.Speak())
}
En este ejemplo, Person implementa la interfaz Speaker porque tiene un método Speak() con la firma necesaria.