Tuesday, March 29, 2005

HERENCIA

La herencia nos permite crear una relación jerarquica entre las clases usando subclases. Una subclase hereda atributos y métodos de su superclase. Por ejemplo, un carro y una bicicleta tienen cosas en común. Podríamos usar una clase vehículo que contenga un atributo color y un método mover, y entonces hacer que nuestras clases carro y bicicleta herenden de vehículo.

Con la herencia, puedes crear y agregar cosas a las clases existentes. De una simple clase base, puedes derivar clases más complejas y especializadas como sea necesario. Esto hace tu código más reusable, que es una de las grandes ventajas de la POO.

El usar la herencia puede ahorrarnos trabajo si los métodos pueden ser escritos en una superclase una sola vez, en lugar de escribirlos muchas veces en diferentes subclases. También puede permitirnos modelar las relaciones del mundo real de una forma más adecuada. Si la expresión sobre dos clases tiene sentido con "es un(a)" entre las clases, se puede decir que la herencia es adecuada. La expresión "un carro es un vehículo" tiene sentido, pero la sentencia "un vehículo es un carro" no es correcta porque no todos los vehículos son carros. Por lo tanto, el carro puede heredar de vehículo.

No comments: