Ayer propuse un ejercicio
simple acerca de implementar en C++ y Java una jerarquía de clases con el objetivo de afianzar conocimientos sobre la herencia en Programación
Orientada a Objetos. Hoy presento la solución.
Foto tomada de freedigitalphotos.net |
Recordemos por un momento
el ejercicio. Planteaba una jerarquía de clases con el siguiente esquema:
- La primera clase de la
jerarquía es la clase Animal.
- De la clase Animal
cuelgan las clases Herbívoro, Carnívoro y Omnívoro.
- De la clase Herbívoro
cuelga la clase Conejo.
- De la clase Carnívoro
cuelgan las clases León y Tigre.
- De la clase Omnívoro
cuelga la clase Hombre.
La implementación es la
siguiente:
En Java:
public class
Animal{}
public class
Herbivoro extends Animal{}
public class
Carnivoro extends Animal{}
public class
Omnivoro extends Animal{}
public class
Conejo extends Herbivoro {}
public class
Leon extends Carnivoro {}
public class
Tigre extends Carnivoro {}
public class
Hombre extends Omnivoro {}
En C++:
class
Animal{}
class
Herbivoro : public Animal{}
class Carnivoro
: public Animal{}
class Omnivoro
: public Animal{}
class Conejo
: public Herbivoro {}
class Leon :
public Carnivoro {}
class Tigre
: public Carnivoro {}
class Hombre
: public Omnivoro {}
¿Conoces otro lenguaje
para implementar esta jerarquía de clases?