Vous êtes sur la page 1sur 6

Nombre de la materia

Programación Orientada a Objetos


Nombre de la Licenciatura
Ingeniería en Sistemas Computacionales

Nombre del alumno


Luis Manuel Mora López
Matrícula
010577912

Nombre de la Tarea
Herencia y Polimorfismo
Unidad #6
Herencia y Polimorfismo

Nombre del Tutor


José Ángel Hernández Mendoza
Fecha
10/06/2019g
Unidad 6. Herencia y polimorfismo
Programación Orientada a Objetos, Tarea 6

Introducción:

Es importante mencionar que el tema principal de esta unidad es la herencia y poliformismo pero,
¿Qué es esto en realidad? Bueno, Comencemos diciendo que la herencia es un mecanímso el cual
nos permitirá definir una clase en base a otra que ya existe. Con la herencia podemos compartir
automáticamente métodos y datos entre las clases, subclases y objetos, en pocas palabras,
podemos afirmar que las herencias son consideradas un copiar y pegar pero mucho más dinámico.

Ahora, podemos también comentar que hay dos tipos de herencias, las cuales se derivan en simples
y multiples. La simple te indica que solo se puede definir una nueva clase a partir de una clase inicial.
Por otro lado la multiple nos dice que podemos definir nuevas clases a partir de dos o más clases
iniciales. Pero cmo estamos trabajando en Java, podemos decir, que solo nos permitirá herencia
simple.

También definamos polimorfismo. Es un objeto el cual solo nos presentará una forma, esta forma
será la que se le asigna cuando el objeto es creado, sin embargo, la referencia polimórfica se refiere
a objetos de diferentes clases.

Instrucciones:

Ejercicios de programación:

1) Sin necesidad de implementar el código completo de las clases, solamente el diagrama, cómo quedaría la
relación de herencia del siguiente caso:

Vas a escribir un programa de software para un zoológico. Sabes que vas a trabajar con animales como:
delfines, peces, ballenas, serpientes, leones, pingüinos, cangrejos, caballos, elefantes, etc.

¿Qué es lo que tienen en común todos?

2
Unidad 6. Herencia y polimorfismo
Programación Orientada a Objetos, Tarea 6

¿Notas que hay varias categorías? Vertebrados, invertebrados, mamíferos, bípedos, cuadrúpedos, acuáticos,
terrestres, etc.
R= Me gustaría agregar como imput que si, en relidad hay más categorías que las presentadas arriba, sin
embargo hay formas más ordenadas de hacerlo y más que nada ordenarlo para no sobrecargar el programa
de información.
Abstrae el problema y propón una jerarquía de clases para el problema presentado. Envía el diagrama
solamente.

Animal

Mamiferos Acuaá ticos Aves AÁ rticos Reptiles y


anfibios

2) Del ejercicio de la unidad, implementa las clases Triángulo y Rombo. Ambas deben heredar de Figura y ser
capaces de calcular el área y perímetro. Envía el código a tu profesor.

//Código “Figura”:
public class Figura
{
String nombre;
float area;
float perimetro;

public Figura()
{
nombre = "Sin definir";
area = 0;
perimetro = 0;
}

public void imprimeInformacion()


{
System.out.println("Nombre: " + nombre);
System.out.println("Área: " + area);
System.out.println("Perimetro: " + perimetro);
}
}

3
Unidad 6. Herencia y polimorfismo
Programación Orientada a Objetos, Tarea 6

//Código EjemploFiguras:

public class EjemploFiguras


{
public static void main(String[] args)
{
Figura figura = new Figura();

figura.imprimeInformacion();

Triangulo triangulo= new Triangulo(9,2,3,5,6);


triangulo.calculaAr();
triangulo.calculaPer();
triangulo.imprimeInformacion();

Rombo rombo = new Rombo(5,10,8);


rombo.calculaAr();
rombo.calculaPer();
rombo.imprimeInformacion();

}
}

//Código Triangulo:

public class Triangulo extends Figura


{
float l1,l2,l3;
float b,h;

public Triangulo(float base,float altura,float l1,float l2,float l3)


{
nombre = "Triangulo";
this.l1 = l1;
this.l2 = l2;
this.l3 = l3;
this.b = base;
this.h = altura;
}

public void calculaAr()

4
Unidad 6. Herencia y polimorfismo
Programación Orientada a Objetos, Tarea 6

{
area = (b*h)/2;
}

public void calculaPer()


{
perimetro = l1+l2+l3;
}
}

//Código Rombo:

public class Rombo extends Figura


{
float dmayor,dmenor;
float lado;

public Rombo(float dmayor,float dmenor, float lado)


{
nombre="Rombo";
this.dmayor=dmayor;
this.dmenor=dmenor;
this.lado=lado;
}

public void calculaAr()


{
area = (dmayor*dmenor)/2;
}

public void calculaPer()


{
perimetro = 4*lado;
}
}

5
Unidad 6. Herencia y polimorfismo
Programación Orientada a Objetos, Tarea 6

//Impresión de pantalla de la compilación del código:

Conclusiones:
Después de lo aprendido en los materiales de la semana y en conclusión a lo ya antes aprendido y
aprendido, pudeo decir que tanto herencia como poliformismo siempre nos serán de grán ayuda
dentro de nuestra programación, no tanto por la facilidad de aprender y la facilidad de ahorrar
espacio en nuestro código, sino tambien en el caso de que en algún momento se requerirá realizar
programas enormes y es mejor realizarlo por partes ya que así la información será más facil de
hubicar en caso de que haya errores de sintaxis o incluso para tenerla ordenada.

Fuentes de información:
-Arkaitz Garro (nd) Java. Obtenido de arkaitzgarro.com:
http://www.arkaitzgarro.com/java/index.html

-Herencia y polimorfismo (Nereu, 2014).

- Programación y más (23 oct 2013) Herencia y Polimorfismo en java (Ejemplo 01). Obtenido de
Youtube:
https://www.youtube.com/watch?v=2tO_v8gYk74

Vous aimerez peut-être aussi