AD

¿Ya dominas lo básico? Un curso estructurado de Go es la vía rápida para dar el salto.

Ver cursos de Go en Udemy

Enlace de afiliado. No te cuesta nada extra.

🐹Lecciones de Go
Lección 9 / 68

Structs (el estilo orientado a objetos de Go)

En esta lección agruparás datos y comportamiento en un tipo propio.

type Animal struct { ... } define los campos. Los métodos se declaran fuera, indicando el receptor: func (a Animal) Hablar() string.

El código de ejemplo define un animal con nombre y sonido y un método que compone una frase.

Go no tiene clases. Un struct son datos, y los métodos se le asocian por separado. Tampoco hay constructores: por convención se escribe una función NewAnimal(...) que devuelve el struct ya montado.

La decisión que hay que entender es el receptor: (a Animal) recibe una copia, mientras que (a *Animal) recibe un puntero y puede modificar el original. Usar el primero cuando querías modificar es un error silencioso muy típico — el método parece no hacer nada.

📖 Código de referencia
✍️ Tu código
Escribe tu código y pulsa «Ejecutar»

🧪 Este sitio no puede compilar ni ejecutar Go directamente, así que comprueba al instante si lo que escribiste coincide con el código de referencia (la corrección ocurre por completo en tu navegador; no se envía nada a ningún servidor).

🔗 El mismo tema en otros lenguajes

Mira cómo se escribe lo mismo en otro lenguaje.

Espacio publicitario (banner)
Espacio publicitario (en el artículo)