ClubEnsayos.com - Ensayos de Calidad, Tareas y Monografias
Buscar

Herencia Y Polimorfismo


Enviado por   •  14 de Junio de 2014  •  1.001 Palabras (5 Páginas)  •  813 Visitas

Página 1 de 5

Índice:

Introducción: 3

Herencia 4

Constructores en la herencia 4

Polimorfismo 6

Sobrecarga de operadores 6

Enlace dinámico y polimorfismo 7

Conclusión: 8

Otras fuentes consultadas: 9

Introducción:

Hasta lo que hemos desarrollado de este curso se ha destacado una de la propiedades más importantes de la programación orientada a objetas la Abstracción. La cual se pone de manifiesto en la Encapsulación, que consiste en proteger los datos del mundo exterior, permitiendo el acceso a ellos a través de una interface. Las clases como ya conocemos permiten implementar modelos que ayudan al programador simular situaciones complejas del mundo real. Ahora las clases no son suficientes por si solas para soportar diseño y programación orientada a objetos, se requiere de un mecanismo para relacionar una clase con otra, este mecanismo lo conoceremos por el nombre de Herencia la cual es una de las características más importantes, después de las clases, en la programación orientada a objetos.

Herencia

La herencia permite definir clases (subclases) a partir de otra clase más genérica (superclase).

La subclase reúne todas las propiedades de la superclase, además de las suyas propias. La herencia potencia la reutilización de código, genera código más fiable y robusto y reduce el coste de mantenimiento.

estudiantes

numExpedientes

mostrarNumExpediente

Persona

Nombre

Apellidos

DNI

MostrarNombre

MostrarDNI

En Java no se permite la herencia múltiple.

Una subclase hereda todos los métodos y atributos de la superclase excepto:

• Atributos y métodos privados

• Constructores (no se heredan pero sí se ejecutan)

Constructores en la herencia

Conceptos previos: toda clase, por defecto, contiene un constructor sin parámetros y vacío.

class Esfera(){

double radio;

Esfera() {} // Este constructor existe sin necesidad de escribirlo

}

Esfera e = new Esfera();

Los constructores no se heredan.

class Esfera(){

double radio;

Esfera(double r) {

radio = r;

}

Esfera() {

radio = 1;

}

}

class Planeta extends Esfera {

int numSatelites;

Planeta(double r, int ns) {

radio = r; numSatelites = ns;

}

}

Planeta p1 = new Planeta(6378, 1); ¿Correcto / Incorrecto?

Planeta p2 = new Planeta(6378); ¿Correcto / Incorrecto?

Planeta p3 = new Planeta(); ¿Correcto / Incorrecto?

Esfera e = new Esfera(6378); ¿Correcto / Incorrecto?

Cuando creamos un objeto de una subclase, el constructor de la clase padre también se ejecuta:

class A(){

A() { System.out.println(“En A”); }

}

class B extends A {

B() { System.out.println(“En B”); }

}

class Demo {

public static void main(String args[]) {

B b = new B();

}

}

Salida

...

Descargar como (para miembros actualizados)  txt (6.3 Kb)  
Leer 4 páginas más »
Disponible sólo en Clubensayos.com