Thursday, August 25, 2011

.. NET: la solución del problema herencia múltiple bajo la plataforma NET

. NET plataforma no admite la herencia múltiple. No hay que confundir la herencia de varios niveles con la herencia múltiple. Con la herencia múltiple podemos tener una subclase que hereda de dos clases al mismo tiempo.

Supongamos que tenemos una aplicación que tiene una clase de clientes y proveedores de otra clase. Si usted quería combinar estas dos clases en una clase CustomerVendor sería una combinación de clientes y proveedores al igual que el siguiente diagrama.

Por favor, copia el siguiente enlace en un Windor nuevo navegador para ver el diagrama: Imágenes http://www.vbprofs.com/images/Article / VBNETinheritance.gif

En el diagrama anterior vemos cómo la clase CustomerVendor hereda de ambos de esas clases.

La herencia múltiple es complejo y puede ser peligroso. Las ventajas del código de re-uso de prevalecer sobre la complejidad depende de su elección.

La herencia múltiple no es compatible con VB.NET o plataforma. Net. En lugar de la herencia múltiple podemos utilizar interfaces múltiples para lograr un efecto similar a la herencia múltiple.

En VB.NET todos los objetos tienen una interfaz primario o nativo, que se compone de propiedades, eventos, métodos o variables miembro declaradas usando la palabra clave pública. Los objetos se pueden aplicar también las interfaces de secundaria mediante el uso de la palabra clave implementar.

A veces es útil para que un objeto tiene más de una interfaz, lo que nos permite interactuar con el objeto de diferentes maneras. La herencia nos permite crear subclases que son un caso especializado de la clase base.

Ejemplo

A veces tenemos un grupo de objetos que no son similares, pero queremos que ellos manejan de la misma manera. Queremos que todos los objetos que actúan como si fueran lo mismo, a pesar de que son diferentes.

Podemos tener algunos objetos diferentes en una aplicación, tales como clientes, productos, etc factura de cada objeto tendría una interfaz predeterminada adecuada para cada objeto y cada uno de ellos es una clase diferente. No patrimonio natural está implícita entre estas clases.

Supongamos que desea imprimir un documento para cada tipo de objeto. En este caso, nos gustaría que todos ellos actúan como objetos para imprimir. Para lograr esto, se puede definir una interfaz genérica que permita la generación de un documento impreso. Mediante la implementación de una interfaz común que son capaces de escribir una rutina que acepta cualquier objeto que implemente un documento impreso.

Para concluir, mediante la implementación de múltiples interfaces en VB.NET, podemos lograr un efecto similar a la de la herencia múltiple.

No comments:

Post a Comment