viernes, 29 de mayo de 2020

Sobrecarga, Herencia, Sobreescritura y Polimorfismo. |POO|



 Microclase sobre Programación Orientada a Objetos 

Temas a tratar: 
  • Sobrecarga
  • Herencia
  • Sobreescritura
  • Polimorfismo 
Sobrecarga


La sobrecarga de métodos es la creación de varios métodos con el mismo nombre pero con diferente lista de tipos de parámetros. Java utiliza el mismo número y tipo de parámetros para seleccionar cuál definición de método ejecutar.

La sobrecarga de constructores, en cambio, es cuando en una clase existen constructores múltiples, y se dice que hay una sobrecarga de constructores. 




Herencia

La herencia es un mecanismo que permite la definición de una clase a partir de la definición de otra ya existente. La herencia permite compartir automáticamente métodos y datos entre clases, subclases y objetos.

La herencia consiste en “sacar factor común” para no escribir código de más, y por lo tanto se crea una clase con el “código que es común a las otras subclases”. A esta clase se le denomina como “Clase Padre o SuperClase”. Las clases con un código específico que dependen de la clase padre se les llama “Clases Hijas”, y heredan de la clase padre todos los atributos y métodos públicos o protegidos. Pero NO heredan nunca los atributos o métodos privados de la clase padre. 







Sobreescritura

Es una característica más de la herencia en Java.  Cuando una nueva clase se extiende desde otra que ya existía, todas las variables y métodos que son miembros de la superclase serán entonces de la subclase. Puede ocurrir que en la subclase algunos de los métodos de la superclase no sean adecuados, así que es posible reescribir el método en la subclase para que se adapte su funcionamiento a los objetos del tipo de la subclase. 





Polimorfismo

Este término se utiliza para referirse a la propiedad por la que es posible enviar mensajes sintácticamente iguales a objetos de tipos distintos.
Es la capacidad que tienen los objetos de una clase en ofrecer una respuesta distinta e independiente en función de los parámetros (diferentes implementaciones) utilizados durante su invocación. Dicho de otro modo el objeto como entidad puede contener valores de diferentes tipos durante la ejecución del programa.

Para poner de ejemplo: podemos crear dos clases distintas, Gato y Perro, que heredan de la superclase Animal. La clase Animal tiene el método abstracto makesound() que se implementa de forma distinta de cada una de las subclases (gatos y perros suenan de forma distinta). Entonces, un tercer objeto puede enviar el mensaje de hacer sonido a un grupo de objetos Gato y Perro por medio de una variable de referencia de clase Animal, haciendo así u uso polimórfico de dichos objetos respecto del mensaje mover. 






A continuación dejamos una pequeña presentación en PowerPoint: 


Alumnos: 
Daniel Volcán C.I: 28326896
 David Mendoza. C.I: 30248458





No hay comentarios.:

Publicar un comentario