Implements (Instrucción)Implements Statement

Especifica uno o más interfaces, o miembros de interfaz que deben implementarse en la clase o definición de la estructura en la que aparece.Specifies one or more interfaces, or interface members, that must be implemented in the class or structure definition in which it appears.

SintaxisSyntax

Implements interfacename [, ...]  
-or-  
Implements interfacename.interfacemember [, ...]  

ElementosParts

interfacename
Obligatorio.Required. Una interfaz cuyas propiedades, procedimientos y eventos que se van a ser implementada por los miembros correspondientes en la clase o estructura.An interface whose properties, procedures, and events are to be implemented by corresponding members in the class or structure.

interfacemember
Obligatorio.Required. El miembro de una interfaz que se está implementando.The member of an interface that is being implemented.

ComentariosRemarks

Una interfaz es una colección de prototipos que representan los miembros (propiedades, procedimientos y eventos) que encapsula la interfaz.An interface is a collection of prototypes representing the members (properties, procedures, and events) the interface encapsulates. Interfaces contienen solo las declaraciones de miembros. las clases y estructuras implementan a estos miembros.Interfaces contain only the declarations for members; classes and structures implement these members. Para más información, vea Interfaces.For more information, see Interfaces.

El Implements instrucción debe seguir inmediatamente el Class o Structure instrucción.The Implements statement must immediately follow the Class or Structure statement.

Cuando se implementa una interfaz, debe implementar todos los miembros declarados en la interfaz.When you implement an interface, you must implement all the members declared in the interface. Si se omite a cualquier miembro se considera un error de sintaxis.Omitting any member is considered to be a syntax error. Para implementar un miembro individual, especifica el implementa palabra clave (que son independientes de la Implements instrucción) cuando se declara el miembro de la clase o estructura.To implement an individual member, you specify the Implements keyword (which is separate from the Implements statement) when you declare the member in the class or structure. Para más información, vea Interfaces.For more information, see Interfaces.

Pueden usar las clases privada implementaciones de propiedades y procedimientos, pero estos miembros son accesibles por una instancia de la clase de implementación en una variable se declara como del tipo de la interfaz de la conversión.Classes can use Private implementations of properties and procedures, but these members are accessible only by casting an instance of the implementing class into a variable declared to be of the type of the interface.

EjemploExample

El ejemplo siguiente muestra cómo usar el Implements instrucción para implementar miembros de una interfaz.The following example shows how to use the Implements statement to implement members of an interface. Define una interfaz denominada ICustomerInfo con un evento, una propiedad y un procedimiento.It defines an interface named ICustomerInfo with an event, a property, and a procedure. La clase customerInfo implementa todos los miembros definidos en la interfaz.The class customerInfo implements all the members defined in the interface.

Public Interface ICustomerInfo
    Event UpdateComplete()
    Property CustomerName() As String
    Sub UpdateCustomerStatus()
End Interface

Public Class customerInfo
    Implements ICustomerInfo
    ' Storage for the property value.
    Private customerNameValue As String
    Public Event UpdateComplete() Implements ICustomerInfo.UpdateComplete
    Public Property CustomerName() As String _
        Implements ICustomerInfo.CustomerName
        Get
            Return customerNameValue
        End Get
        Set(ByVal value As String)
            ' The value parameter is passed to the Set procedure
            ' when the contents of this property are modified.
            customerNameValue = value
        End Set
    End Property

    Public Sub UpdateCustomerStatus() _
        Implements ICustomerInfo.UpdateCustomerStatus
        ' Add code here to update the status of this account.
        ' Raise an event to indicate that this procedure is done.
        RaiseEvent UpdateComplete()
    End Sub
End Class

Tenga en cuenta que la clase customerInfo usa el Implements instrucción en una línea de código fuente independiente para indicar que la clase implementa todos los miembros de la ICustomerInfo interfaz.Note that the class customerInfo uses the Implements statement on a separate source code line to indicate that the class implements all the members of the ICustomerInfo interface. A continuación, cada miembro de la clase usa el Implements palabra clave como parte de su declaración de miembro para indicar que implementa ese miembro de interfaz.Then each member in the class uses the Implements keyword as part of its member declaration to indicate that it implements that interface member.

EjemploExample

Los dos procedimientos siguientes muestran cómo podría utilizar la interfaz implementada en el ejemplo anterior.The following two procedures show how you could use the interface implemented in the preceding example. Para probar la implementación, agregue estos procedimientos para su proyecto y llame a la testImplements procedimiento.To test the implementation, add these procedures to your project and call the testImplements procedure.

Public Sub TestImplements()
    ' This procedure tests the interface implementation by
    ' creating an instance of the class that implements ICustomerInfo.
    Dim cust As ICustomerInfo = New customerInfo()
    ' Associate an event handler with the event that is raised by
    ' the cust object.
    AddHandler cust.UpdateComplete, AddressOf HandleUpdateComplete
    ' Set the CustomerName Property
    cust.CustomerName = "Fred"
    ' Retrieve and display the CustomerName property.
    MsgBox("Customer name is: " & cust.CustomerName)
    ' Call the UpdateCustomerStatus procedure, which raises the
    ' UpdateComplete event.
    cust.UpdateCustomerStatus()
End Sub

Sub HandleUpdateComplete()
    ' This is the event handler for the UpdateComplete event.
    MsgBox("Update is complete.")
End Sub

Vea tambiénSee also