Ejercicio de programación con Go: Polimorfismo a través de Interfaces
Código
0h 25m
GoLang GO: ejercicio sobre polimorfismo implementado con interfaces. Practica tu lógica de programación en programación orientada a objetos con polimorfismo y herencia.
Desarrolla un programa de código en GoLang Go que permita gestionar diferentes tipos de animales en una reserva natural. Debes:
- Definir una interfaz llamada
Animal
que declare un métodoEmitirSonido()
que no reciba parámetros y devuelva unstring
. - Implementar esta interfaz en las estructuras
Leon
,Lobo
yVaca
.- La estructura
Leon
debe tener un campoNombre
de tipostring
. - La estructura
Lobo
debe tener un campoManada
de tipoint
que indica el número de miembros de su manada. - La estructura
Vaca
debe tener un campoProduccionLeche
de tipofloat64
que indica los litros de leche producidos al día.
- La estructura
- Cada implementación del método
EmitirSonido()
debe devolver unstring
que represente el sonido característico del animal junto con información relevante. Por ejemplo:"El león Simba ruge"
,"El lobo de una manada de 5 miembros aúlla"
,"La vaca produce muuu y da 20 litros de leche"
. - Crear una función llamada
EscucharAnimales
que reciba un slice deAnimal
y, para cada uno, llame a su métodoEmitirSonido()
e imprima el resultado. - En la función
main
, crear instancias deLeon
,Lobo
yVaca
, agregarlas a un slice deAnimal
y utilizarEscucharAnimales
para simular los sonidos en la reserva natural.
Notas:
- Utiliza correctamente las interfaces para lograr polimorfismo.
- No utilices herencia; enfócate en el uso de interfaces para compartir comportamiento.
- Asegúrate de que los métodos implementen la interfaz correctamente y que el programa compile y se ejecute sin errores.
Todos los ejercicios de programación de Go
Evalúa tus conocimientos con ejercicios de programación en Go de tipo Test, Puzzle, Código y Proyecto con VSCode.
Control de flujo y estructuras de bucle
Código
Tipos de datos, variables y constantes
Código
Composición de structs en lugar de herencia
Código
Estructuras de control
Puzzle
Arrays y slices
Puzzle
Operadores y expresiones
Puzzle
Instalación Go primer programa
Código
Errores personalizados y trazabilidad
Código
Sistema API REST gestión de libros
Proyecto
Canales y comunicación entre Goroutines
Código
Goroutines y concurrencia básica
Test
Agenda de contactos por consola
Proyecto
Métodos HTTP con net/http
Puzzle
Métodos con receptores por valor y por puntero
Código
Evaluación Go
Test
Crear e invocar funciones
Código
Estructuras structs
Código
Introducción a Go
Test
Estructuras de datos Mapas
Código
Certificados de superación de Go
Supera todos los retos de Go y obtén estos certificados de superación para mejorar tu currículum y tu empleabilidad.
Tutorial para resolver este ejercicio de programación
Go
Polimorfismo a través de Interfaces
Programación Orientada a Objetos