Ver Mensaje Individual
  #32  
Antiguo 14-12-2005
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Reputación: 29
Lepe Va por buen camino
Si te refieres a crear tú tus propias clases pensando polimórficamente para
despues usarlo... pues en casos como estos sip; que dicho sea de paso, es
algo frecuente.

Usarlo de forma insconciente, o sin darte cuenta.... pues mucho más de lo
que crees, aunque no he mirado la VCL a fondo para comprobarlo, estoy muy
seguro de que internamente Delphi usa el concepto, ya que da mucha
libertad.

Declaras una variable como Tcomponent y despues puedes asignarle un
descendiente que tenga la clase.

-Un caso común es acceder a FindComponent para encontrar un determinado
control en el form en tiempo de ejecución. FindComponent busca un
Tcomponent, pero puede ser un TEdit, Tpanel o cualquiera que sea
descendiente, que en realidad lo serán casi todos los controles que tienes en
un Form.

- Realizar un bucle sobre todos los TEdits con FormX.Components[i]. (más de
lo mismo), cada boton o panel, se trata como si fuera un Tcomponent, que es
la clase base para ambos controles que he mencionado.

- Incluso recorrer todos los campos que tiene una tabla, tú trabajas
con Tfield, pero el campo en cuestión puede ser un TIntegerfield, TFloatField,
etc., que son clases hijas de TField.

Esto mismo se podría hacer sin uso del polimorfismo, pero no cabe duda que
ahorras lineas de código de esta forma, amén de usar una característica muy
potente del lenguage.

Moraleja: Es importante aprender los conceptos y practicar tanto con polimorfismo, herencia, etc.

saludos y espero te sirva.

saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente,
se lo volveré a explicar hasta que no lo entienda, Gracias.

Última edición por Lepe fecha: 14-12-2005 a las 21:37:55.
Responder Con Cita