1. Polimorfismo significa ( Muchas formas ). En términos de programación, el polimorfismo permite que solo un nombre de clase o de método represente diferentes código seleccionado mediante algún mecanismo automático. De esta manera, un nombre puede tomar diferentes formas y puesto que puede representar diferente código., también puede representar muchos comportamientos distintos.
2. El polimorfismo de inclusión es útil por que reduce la cantidad de código por escribir. En lugar de tener que escribir un método por cada tipo concreto de ObjetoPersonalidad, tan solo hay necesidad de escribir un método que maneje todos los tipos. Facilita la incorporación de nuevos subtipos a un programa pro que es necesario agregar un método especifico para ese tipo.
3. El polimorfismo parametrito le permite crear métodos y tipos genéricos. Al igual que el polimorfismo de inclusión, el polimorfismo Paramétrico da la opción de modificar algo una vez y que esto trabaje con otros tipos diferentes de argumentos.
4. Le permite programar métodos genéricos aplazando las declaraciones de tipo de parametricos hasta el momento de la ejecucion.Considere el siguiente método: Int suma ( int a, int b ) Suma( ) toma dos enteros y devuelve el resultado de la suma. Este método es muy explicito; tomar dos enteros como argumento no es posible pasar dos números reales o dos matrices a este método.
5. La sobrecarga también conocida como polimorfismo AD-HOC , permite utilizar el mismo nombre de métodos para diferentes métodos . Cada método difiere solamente en la cantidad y en el tipo de sus parámetros Coerción se da cuando, tras bambalinas , un argumento de un tipo se convierte en el tipo que se necesita.
6. Al igual que cualquiera de los pilares, el polimorfismo eficiente no se da pro accidente . Hay algunos pasos que se pueden seguir para conseguir un polimorfismo eficiente . El primero es lograr encapsulamiento y herencia eficiente. sin encapsulamiento el código se vuelve fácilmente dependiente de la implementación de las clases. No permita que el encapsulamiento se estropee. Si su código se vuelve dependiente de algún aspecto de la implementación de una clase, usted no podrá conectar una subclase conectada con esa implementación. Un buen encapsulamiento es el primer paso hacia el polimorfismo.
7. Al utilizar el polimorfismo es necesario tener cuidado de tres principales peligros: PELIGRO1 : MOVE COMPROTAMIENTOS HACIA ARRIBA EN LA JERARQUIA PELIGRO 2: SOBRECARGA EN EL RENDIMIENTO PELIGRO3: ANTEOJERAS