Ver Mensaje Individual
  #2 (permalink)  
Antiguo 28/05/2013, 22:10
Avatar de ggomez91
ggomez91
 
Fecha de Ingreso: octubre-2008
Mensajes: 181
Antigüedad: 15 años, 6 meses
Puntos: 13
Respuesta: Que gran utilidad tiene una Interface?

Yo no entendía para qué son útiles hasta que las tuve que usar en un proyecto. Tenía un jTree (un widget gráfico para mostrar árboles) y tenía tipos de nodos distintos. Ahora, el jTree debe tener un tipo pero qué tipo de nodo le pones si son varios distintos? la solución fue hacer una interfaz Nodo y definir en este los métodos como Expandir(), Contraer(), Dibujar(), etc. Mis nodos implementaban esta interfaz y cada uno sabía como realizar la tarea (todos lo hacían de forma distinta).

Lo mágico de esto es que una vez que los Nodos tienen la interfaz puedes llamar el método Expandir() sin saber explícitamente qué clase de nodo es, por que sabes que es un Nodo, por lo tanto tiene el método y puedes llamarlo.

Mis nodos además calculaban un precio a partir de sus hijos pero no todos seguían las mismas reglas, a la hora de dibujar un Nodo simplemente llamana al método de la interfaz calcularPrecio() y cada clase que implementaba Nodo sabía como calcular su precio, igual no era necesario hacer la distinción,.

Espero que esto te dé una idea de cuando puedes usarlos. Saludos!