Herencia: Clase Padre

Descargar como docx, pdf o txt
Descargar como docx, pdf o txt
Está en la página 1de 2

HERENCIA

La herencia significa que se pueden crear nuevas clases partiendo de


clases existentes, que tendrá todas los atributos y los métodos de su
'superclase' o 'clase padre' y además se le podrán añadir otros
atributos y métodos propios.
Clase padre
Clase de la que desciende o deriva una clase. Las clases hijas
(descendientes) heredan (incorporan) automáticamente los atributos y
métodos de la la clase padre.
Subclase
Clase que desciende de otra. Hereda automáticamente los atributos y
métodos de su superclase. Es una especialización de otra clase.
Admiten la definición de nuevos atributos y métodos para aumentar la
especialización de la clase.
Veamos algunos ejemplos teóricos de herencia:
1) Imaginemos la clase Vehículo. ¿Qué clases podrían derivar de ella?

Siempre hacia abajo en la jerarquía hay una especialización (las


subclases añaden nuevos atributos y métodos)

Polimorfismo
El primer tipo de relación que habíamos visto entre dos clases, es la
de colaboración. Recordemos que es cuando una clase contiene un
objeto de otra clase como atributo.
Cuando la relación entre dos clases es del tipo "...tiene un..." o "...es
parte de...", no debemos implementar herencia. Estamos frente a una
relación de colaboración de clases no de herencia.
Si tenemos una ClaseA y otra ClaseB y notamos que entre ellas existe
una relación de tipo "... tiene un...", no debe implementarse herencia
sino declarar en la clase ClaseA un atributo de la clase ClaseB.
programar en lenguajes débilmente tipados, como es el caso de PHP
y Javascript. Por ello es conveniente entender cómo es un
lenguaje fuertemente tipado, como es el caso de Java o C.

En estos lenguajes, cuando defino una variable, siempre tengo que


decir el tipo de datos que va a contener esta variable. Por ejemplo:

int miNumero;
Así le indicamos que la variable declarada "miNumero" va a contener siempre
un entero. Podrás asignarle diversos valores, pero siempre deben de ser
números enteros. De lo contrario el compilador te lanzará un mensaje de
error y no te permitirá compilar el programa que has realizado.

Esto incluso pasa con los objetos. Por ejemplo, si en Java defino la
clase "Largometraje" (una cinta que se puede exhibir en la televisión o
el cine), cuando creo objetos de la clase "Largometraje" debo declarar
variables en las que indique el tipo de objeto que va a contener.

Largometraje miLargo = new Largometraje("Lo


que el viento se llevó");
Esa variable "miLargo", por declaración tendrá una referencia a un
objeto de la clase "Largometraje". Pues bien, durante toda su vida,
deberá tener siempre una referencia a cualquier objeto de la misma
clase. O sea, mañana no podremos guardar un entero en la variable,
ni una cadena u otro objeto de otra clase.

También podría gustarte