Niveles de heredación

11/04/2007 - 09:17 por David C | Informe spam
Hola a todos,

Se puede hacer lo siguiente?

Tenemos un formulario que tiene unos metodos y atributos de clase genéricos.
Desde este form queremos hacer otro heredado añadiendo ciertos atributos y
metodos genéricos.
Desde el anterior queremos hacer un tercer form que herede todas las
propiedades de los dos anteriores mas ciertos atributos específicos.

Es posible hacer esto. Es decir con Java o con C++ es totalmente posible
crear un clase tipo form de dos clases tipos form determinadas.

Si alguien lo ha realizado y quiere postear un comentario, se agradeceria...

David.
 

Leer las respuestas

#1 Alberto Poblacion
11/04/2007 - 09:27 | Informe spam
"David C" wrote in message
news:
Tenemos un formulario que tiene unos metodos y atributos de clase
genéricos.
Desde este form queremos hacer otro heredado añadiendo ciertos atributos y
metodos genéricos.
Desde el anterior queremos hacer un tercer form que herede todas las
propiedades de los dos anteriores mas ciertos atributos específicos.

Es posible hacer esto. Es decir con Java o con C++ es totalmente posible
crear un clase tipo form de dos clases tipos form determinadas.



Te vas a enterar como te pille Alfredo Novoa diciendo "heredación" :-)

Si no te he entendido mal, lo que persigues es la herencia múltiple (es
decir, una clase que herede simultaneamente de otras dos, las cuales a su
vez no heredan la una de la otra). En C#, a diferencia de C++, no existe
herencia múltiple, sino solo herencia simple, es decir, que solo puedes
heredar de una única clase.
La alternativa consiste en implementar Interfaces. Una clase puede
heredar de una única clase madre, e implementar uno o más interfaces. Este
mecanismo no es tan potente como la herencia de clases, ya que con la
implementación de interfaces solo recibes en la clase hija la definición,
pero no la implementación, de las propiedades y métodos definidos en el
interface. Lo que sí consigues con los interfaces es que funcione el
polimorfismo igual que si estuvieras usando herencia.

Preguntas similares