Partial (Visual Basic)
Indica que la declaración de una clase o una estructura es una definición parcial de dicha clase o estructura.
Puede dividir la definición de una clase o estructura en varias declaraciones mediante la palabra clave Partial.Puede utilizar tantas declaraciones parciales como desee, en tantos archivos de código fuente diferentes como quiera.Sin embargo, todas las declaraciones deben estar en el mismo ensamblado y el mismo espacio de nombres.
[!NOTA]
Visual Basic admite los métodos parciales, que normalmente se implementan en clases parciales.Para obtener más información, vea Métodos parciales (Visual Basic) y Sub (Instrucción, Visual Basic).
[ <attrlist> ] [ accessmodifier ] [ Shadows ] [ MustInherit | NotInheritable ] _
Partial { Class | Structure } name [ (Of typelist) ]
[ Inherits classname ]
[ Implements interfacenames ]
[ variabledeclarations ]
[ proceduredeclarations ]
{ End Class | End Structure }
Elementos
Término |
Definición |
attrlist |
Opcional.Lista de atributos que se aplica a esta clase o estructura.Debe incluir la Lista de atributos (Visual Basic) entre corchetes angulares (< >). |
accessmodifier |
Opcional.Especifica qué código puede tener acceso a esta clase o estructura.Vea Niveles de acceso en Visual Basic. |
Shadows |
Opcional.Vea Shadows (Visual Basic). |
MustInherit |
Opcional.Vea MustInherit (Visual Basic). |
NotInheritable |
Opcional.Vea NotInheritable (Visual Basic). |
name |
Obligatorio.Nombre de esta clase o estructura.Debe coincidir con el nombre definido en todas las demás declaraciones parciales de la misma clase o estructura. |
Of |
Opcional.Especifica que se trata de una estructura o clase genérica.Vea Tipos genéricos en Visual Basic (Visual Basic). |
typelist |
Es obligatoria si se utiliza Of.Vea Lista de tipos (Visual Basic). |
Inherits |
Opcional.Vea Inherits (Instrucción). |
classname |
Es obligatoria si se utiliza Inherits.Nombre de la clase o interfaz de la que se deriva esta clase. |
Implements |
Opcional.Vea Implements (Instrucción). |
interfacenames |
Es obligatoria si se utiliza Implements.Nombres de las interfaces implementadas por esta clase o estructura. |
variabledeclarations |
Opcional.Instrucciones que declaran eventos y variables adicionales para la clase o estructura. |
proceduredeclarations |
Opcional.Instrucciones que declaran y definen procedimientos adicionales para la clase o estructura. |
End Class o End Structure |
Finaliza esta definición parcial de Class o Structure. |
Comentarios
Visual Basic utiliza definiciones de clase parciales para separar el código generado del código creado por el usuario en archivos de código fuente distintos.Por ejemplo, el Diseñador de Windows Forms define clases parciales para los controles, como Form.No debería modificar el código generado de estos controles.
Todas las reglas de creación de clases y estructuras, como por ejemplo las reglas de herencia y utilización de modificadores, se aplican cuando se crea una clase o una estructura parcial.
Procedimientos recomendados
En circunstancias normales, no debería dividir el desarrollo de una única clase o estructura en dos o más declaraciones.Por tanto, en la mayoría de los casos no necesitará la palabra clave Partial.
Por motivos de legibilidad, cada declaración parcial de una clase o estructura debería incluir la palabra clave Partial.El compilador únicamente permite que se omita la palabra clave en una sola declaración parcial; si se omite en dos o más declaraciones parciales, el compilador indicará un error.
Comportamiento
Unión de declaraciones. El compilador trata la clase o estructura como la unión de todas sus declaraciones parciales.Todos los modificadores de cada definición parcial se aplican a toda la clase o estructura, y todos los miembros de cada definición parcial están disponibles en toda la clase o estructura.
La promoción de tipos no está permitida para tipos parciales en módulos. Si una definición parcial está dentro de un módulo, la promoción de tipos de esa clase o estructura se rechaza automáticamente.En este caso, un conjunto de definiciones parciales puede producir resultados inesperados e incluso errores del compilador.Para obtener más información, vea Promoción de tipos (Visual Basic).
El compilador sólo combina las definiciones parciales cuando sus rutas de acceso completas son idénticas.
La palabra clave Partial se puede utilizar en estos contextos:
Ejemplo
En el ejemplo siguiente se divide la definición de la clase sampleClass en dos declaraciones, cada una de las cuales define un procedimiento Sub diferente.
Partial Public Class sampleClass
Public Sub sub1()
End Sub
End Class
Partial Public Class sampleClass
Public Sub sub2()
End Sub
End Class
Las dos definiciones parciales del ejemplo anterior podrían estar en el mismo archivo de código fuente o en dos archivos de código fuente diferentes.
Vea también
Referencia
Instrucción Class (Visual Basic)
Conceptos
Promoción de tipos (Visual Basic)