Buenas, para quien revise este código, cumple correctamente con lo que se pedía en el ejercicio y además lo hace de una forma original respecto a los ejemplos del propio curso y respecto a otras soluciones de los foros.
Invito a quien tenga interés a comparar este código con otra solución existente en los foros disponible en
https://aprenderaprogramar.com/foros/index.php?topic=6155.0Es interesante ver cómo se declaran atributos estáticos y/o constantes; la invocación con notación de punto de atributos estáticos; el uso del constructor para crear el tipo de animal de forma aleatoria y el uso de un atributo estático para contar el número de cuadrúpedos creados, etc.
Lo dicho, quien tenga interés que revise el código, porque merece la pena ver las ideas que contiene.
Salu2