Ver Mensaje Individual
  #1  
Antiguo 23-11-2006
Deiv Deiv is offline
Miembro
 
Registrado: jul 2005
Ubicación: La Paz - Bolivia
Posts: 364
Reputación: 21
Deiv Va por buen camino
Exclamation Polimorfismo con diferentes parámetros

Hola,
Hasta ahora había realizado mis programas en base a los componentes que se dispone en las petañas de Delphi. Ahora voy profundizando un poco en la creación de Clases. Voy estudiando ejemplos de "La Cara Oculta de Delphi" y "Ejemplos de Fontela" como novato me llegan un montón de dudas. En el Foro he buscado y he encontrado muchos ejemplos pero ninguno como la siguiente pregunta:
Código Delphi [-]
type
   TVentana = class
      private
        Ancho, Altura: TCoordenadaPantalla;
 ColorFondo : TColor;
      public
        constructor Create (An, Al: TCoordenadaPantalla; CF : TColor);
        procedure Dibujar; virtual;
end;

type
   TVentanaConTexto = class(TVentana)
      private
        ColorTexto: TColor;
        Texto: PChar;
      public
        constructor Create (An, Al: TCoordenadaPantalla; CF, CT : TColor);
        procedure Dibujar; override;
end;

type
   TVentanaConGráfico = class(TVentana)
      private
        Grafico : PGrafico;
      public
        constructor Create (An, Al: TCoordenadaPantalla; CF: TColor; G: PGrafico);
        procedure Dibujar; override;
end;

Este es un ejemplo que saqué de Fontela (lo he reducido). Lo que no entiendo es lo siguiente:

- ¿Pueden los constructor Create override declararse de esa forma? es decir si se fijan en las clases hijas se aumenta una que otra cosa (VARÍAN los Parámetros).

- ¿Cual sería la implementación para el caso de ser afirmativo mi anterior pregunta?

- La misma pregunta para el caso del procedure Dibujar, ahí creo que no hay problema con los parámetros (no tiene), pero ¿que tal si tuvieran diferentes parámetros las clases hija, no habría problema en el polimorfismo para el caso del procedure Dibujar?

Bueno, me está faltando encontrar en la Red EJEMPLOS SENCILLOS pero COMPLETOS de Polimorfismo y Herencia, para comprender.

Última edición por Deiv fecha: 23-11-2006 a las 22:53:23.
Responder Con Cita