Compartir a través de


Parcial (Visual Basic)

Indica que una declaración de tipo es una definición parcial del tipo.

Puede dividir la definición de un tipo entre varias declaraciones mediante la Partial palabra clave . Puede usar tantas declaraciones parciales como desee, en tantos archivos de origen diferentes como desee. Sin embargo, todas las declaraciones deben estar en el mismo ensamblado y en el mismo espacio de nombres.

Nota:

Visual Basic admite métodos parciales, que normalmente se implementan en clases parciales. Para obtener más información, vea Métodos parciales y sub instrucción.

Sintaxis

[ <attrlist> ] [ accessmodifier ] [ Shadows ] [ MustInherit | NotInheritable ] _  
Partial { Class | Structure | Interface | Module } name [ (Of typelist) ]  
    [ Inherits classname ]  
    [ Implements interfacenames ]  
    [ variabledeclarations ]  
    [ proceduredeclarations ]  
{ End Class | End Structure }  

Partes

Término Definición
attrlist Opcional. Lista de atributos que se aplican a este tipo. Debe incluir la lista de atributos entre corchetes angulares (< >).
accessmodifier Opcional. Especifica qué código puede tener acceso a este tipo. Consulte Niveles de acceso en Visual Basic.
Shadows Opcional. Vea Sombras.
MustInherit Opcional. Consulte MustInherit.
NotInheritable Opcional. Consulte NotInheritable.
name Obligatorio. Nombre de este tipo. Debe coincidir con el nombre definido en todas las demás declaraciones parciales del mismo tipo.
Of Opcional. Especifica que se trata de un tipo genérico. Vea Tipos genéricos en Visual Basic.
typelist Obligatorio si usa Of. Consulte Lista de tipos.
Inherits Opcional. Consulte Heredar instrucción.
classname Obligatorio si usa Inherits. Nombre de la clase o interfaz de la que deriva esta clase.
Implements Opcional. Consulte Implements (Instrucción) .
interfacenames Obligatorio si usa Implements. Los nombres de las interfaces que implementa este tipo.
variabledeclarations Opcional. Instrucciones que declaran variables y eventos adicionales para el tipo.
proceduredeclarations Opcional. Instrucciones que declaran y definen procedimientos adicionales para el tipo.
End Class o End Structure Finaliza esta definición o Structure parcialClass.

Observaciones

Visual Basic usa definiciones de clase parcial para separar el código generado del código creado por el usuario en archivos de código fuente independientes. Por ejemplo, el Diseñador de Windows Form define clases parciales para controles como Form. No debe modificar el código generado en estos controles.

Todas las reglas para la creación de clases, estructuras, interfaz y módulos, como las de uso y herencia modificadores, se aplican al crear un tipo parcial.

Procedimientos recomendados

  • En circunstancias normales, no debe dividir el desarrollo de un solo tipo en dos o más declaraciones. Por lo tanto, en la mayoría de los casos no necesita la Partial palabra clave .

  • Para mejorar la legibilidad, todas las declaraciones parciales de un tipo deben incluir la Partial palabra clave . El compilador permite que, como máximo, una declaración parcial omita la palabra clave; si se omiten dos o más, el compilador indica un error.

Comportamiento

  • Unión de declaraciones. El compilador trata el tipo como unión de todas sus declaraciones parciales. Cada modificador de cada definición parcial se aplica a todo el tipo y todos los miembros de cada definición parcial están disponibles para todo el tipo.

  • Promoción de tipos no permitida para tipos parciales en módulos. Si una definición parcial está dentro de un módulo, se anula automáticamente la promoción de tipo de ese tipo. En tal caso, un conjunto de definiciones parciales puede provocar resultados inesperados e incluso errores del compilador. Para obtener más información, vea Promoción de tipos.

    El compilador combina definiciones parciales solo cuando sus rutas completas calificadas son idénticas.

La Partial palabra clave se puede usar en estos contextos:

Instrucción Class

Instrucción Structure

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 diferente Sub .

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 origen o en dos archivos de origen diferentes.

Consulte también