net inherits asp asp.net vb.net inheritance

inherits - asp.net: clases parciales y herencia



inherits c# (1)

Tengo una clase dividida en dos archivos. Uno de estos se genera, el otro contiene el material no generado.

Quiero que mi clase herede de una clase base. ¿Debo tener ambos archivos heredar? O la clase heredará de la clase base si es una clase parcial

En foo.vb generado:

Partial Public Class Foo Inherits BaseClass

En foo.vb creado manualmente:

Partial Public Class Foo

No parece importar (de acuerdo con lo que veo en Reflector, de todos modos).

¿Alguien puede explicar cómo funciona esto? ¿El compilador simplemente combina los dos?


Solo uno de los dos debe heredar.

Las clases parciales son solo trucos de compilación. Tus dos archivos se unen nuevamente antes de compilar. Esto significa que solo se puede especificar una clase base, al igual que en las clases normales.

Puedes tener esto:

partial class one : base {} partial class one {}

y esto:

partial class one : base {} partial class one : base {}

pero no esto

partial class one : fu {} partial class two : bar {}

porque el último se combina en:

class one : fu, bar {}

que es ilegal Sin embargo, puedes mezclar y combinar interfaces, al igual que en una clase normal.