Tutorial. Qué es la herencia
21 de agosto de 2008A menudo diferentes tipos de objetos tienen algunas cosas en común. Por ejemplo, las bicicletas de montaña, las de carretera y los tándems todos comparten las caracterÃsticas de las bicicletas (velocidad actual, cadencia de pedal, marcha). Aún asà cada una de ellas también define caracterÃsticas adicionales que las hacen diferentes: los tándems tienen dos asientos y dos manillares, las bicicletas de carretera tienen un manillar con cuernos, algunas bicicletas de montaña tienen más piñones que les proporcionan marchas más cortas.
La programación orientada a objetos permite que las clases hereden estados y comportamientos de uso común de otras clases. En este ejemplo, Bicycle se convierte en la superclase de MountainBike, RoadBike y TandemBike. En el lenguaje de programación Java se permite que cada clase tenga una superclase directa y que cada superclase tenga el potencial para una cantidad ilimitada de subclases.
La sintaxis para crear subclases en sencilla. Utilice la palabra clave extends seguida del nombre de la clase de la que desea heredar al inicio de su declaración de clase:
class MountainBike extends Bicycle { // Los nuevos campos y métodos que definan una bici de montaña irÃan aquà } |
Esto proporciona a MountainBike los mismos campos y métodos que Bicycle, pero permite a su código encargarse exclusivamente de las caracterÃsticas que la hacen única. Esto hace que el código de sus subclases sea fácil de leer. Sin embargo debe encargarse de documentar apropiadamente el estado y comportamiento que cada superclase que define, ya que ese código no aparecerá en el archivo fuente de cada subclase.