3.POO Herencia

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

HERENCIA

La herencia es una característica de la programación orientada a objetos, que permite la


definición de una clase a partir de otra ya existente. La herencia busca compartir
automáticamente métodos y atributos entre clases, subclases y objetos.

Objetivos de la Herencia:

Reutilizar el código: Evita tener que reescribir métodos de una clase en otra.

Mantenimiento de aplicaciones existentes: Si se tiene una clase y se requiere ampliar dicha


funcionalidad, no se necesita modificar la clase existente, la cual se puede seguir utilizando
para el tipo de programa para la que fue diseñada, sino que se puede crear una clase que
herede a la primera, adquiriendo toda su funcionalidad y añadiendo la suya propia.

Tipos de herencia:

Herencia Simple:

Una clase padre puede tener muchas hijas, pero una hija solo puede tener un padre. Java solo
permite herencia simple.

Herencia Múltiple:

Una clase hija puede tener varias clases padre. Java no permite herencia multiple.

Superclase, Clase Base o Clase Padre

Es la denominación de la clase desde la cual se hereda a otra.

Subclase, Clase derivada o Clase Hija

Es la denominación de la clase que hereda directamente de otro.

Operador Final

El operador Final es utilizado cuando no se desea tener más clases hijas, es decir detiene la
herencia. Pueden Existir Clases Final las cuales no pueden ser heredadas o Métodos Final,
donde la clase puede ser heredada pero uno o varios métodos no son heredables.

Sobreescritura y Sobrecarga de métodos

Usualmente no se puede crear un método con el mismo nombre de otro ya existente, pero

Sobrecarga (Overloading)

La sobrecarga permite declarar métodos que se llamen igual pero que reciban parámetros
diferentes. Está dada por los parámetros que se manejan.

Sobreescritura (Overriding)
Propiedad de la herencia que permite redefinir el comportamiento de un método de la clase
padre en la clase hija con su mismo nombre. Esta dada por la implementación del método y no
por sus parámetros.

Operador Super

Si se sobreescribe un método de su superclase, se puede utilizar la palabra clave super para


eludir la versión sobreescrita de la clase e invocar a la versión original del método en la
superclase. Del mismo modo, se puede utilizar super para acceder a variables miembro de la
superclase.

El Método super(), hace referencia al constructor de la clase padre.

Operador this

Al acceder a variables de instancia de una clase, la palabra clave this hace referencia a los
miembros de la propia clase en el objeto actual; es decir, this se refiere al objeto actual sobre
el que está actuando un método determinado y se utiliza siempre que se quiera hace
referencia al objeto actual de la clase.

Ejemplo de herencia

Clase Lecturas: Permite

import javax.swing.JOptionPane;

public class Lecturas {

public float leerFloat(String msg){


float x;
x=Float.parseFloat(JOptionPane.showInputDialog(msg));
return x;
}

Clase Padre Conversor:

public class conversor {

protected float num1;

public void setNum1(float num){


this.num1= num;
}

public float getNum1(){


return num1;
}

public void segundos(){


Lecturas le = new Lecturas();
setNum1(le.leerFloat("inserte segundos: "));
}

Clase Hija Conversor2:

public class conversor2 extends conversor{

protected float min;

public void segundos(){


super.segundos();
min=num1/60;
}

CLASE NIETA:

import javax.swing.JOptionPane;

public class conversor3 extends conversor2{

protected double miliseg;

public void segundos(){


super.segundos();
miliseg=num1*1000;
JOptionPane.showMessageDialog(null, num1 + " segundos, son
" + min + " minutos y son " + miliseg + " milisegundos ");
}

Clase Aplicación:

public class Aplicacion {

public static void main(String[] args) {


conversor3 co = new conversor3();
co.segundos();
}

Fuentes:
https://javadesdecero.es/poo/herencia-java-tipos-ejemplos/

También podría gustarte