Poliformismo

viernes, 19 de febrero de 2010 ·
Poliformismo (del griego “muchas formas”) es la cualidad que permite que una interfaz acceda a una clase general de acciones. La acción especifica está determinada por la naturaleza exacta de la situación. El volante de un automóvil representa un ejemplo simple de poliformismo. El volante (es decir, la interfaz) es el mismo sin importar el tipo de mecanismo de conducción real que se emplee. En otras palabras, el volante funcionará de manera igual si su automóvil tiene dirección manual, dirección hidráulica o de engranes. Por lo tanto, una vez que sepa cómo operar el volante, podrá manejar cualquier tipo de automóvil.

El mismo principio se puede aplicar también a la programación. Por ejemplo, tome en consideración una pila (la cual es una lista del tipo primero en entrar y último en salir). Podrá tener un programa que requiera tres tipos diferentes de pilas: una pila se usa para valores enteros, otra para valores de punto flotante y otra más para caracteres. En este caso, el algoritmo que implemente cada pila será el mismo, aunque los datos que se almacenen sean diferentes. En un lenguaje orientado a objetos necesitaría crear tres conjuntos diferentes de rutinas de pila, y cada conjunto tendría que emplear nombres diferentes. Sin embargo, debido al poliformismo, en Java puede crear un conjunto general de rutinas de pilas que funcione para las tres situaciones específicas. De esta manera, una vez que usted sabe cómo usar una pila, podrá usarlas todas.

De manera más general, el concepto de poliformismo suele expresarse con la frase “una interfaz, varios métodos”. Esto significa que es posible diseñar una interfaz genérica para un grupo de actividades relacionadas. El poliformismo ayuda a reducir la complejidad al permitir que la misma interfaz sea usada para especificar una clase general de acción. Usted, el programador, no necesita llevar a cabo esta selección manualmente, sólo necesita recordar y utilizar la interfaz general.

0 comentarios:

Publicar un comentario

Tu comentario es importante

Entradas Recientes Entradas Antiguas data:homeMsg

CodigoByte

Codigo QR

Etiquetas

Blogumulus by Roy Tanck and Amanda Fazani

Twitter

Seguir codigobyte en Twitter

Twitter Actualizar

    sigueme en Twitter

    Participa

    Java Twitter

    ¿Cúal es la extensión usada para guardar los archivos fuente Java?

    Mangoos

    Mangoos
    http://mangoosbuscador.wordpress.com/

    Anunciantes

    Se escribe con...

    Se escribe con...