Tutorial: Definir clases (Visual Basic)

En este tutorial se muestra cómo definir clases que puede usar para crear objetos. También muestra cómo agregar propiedades y métodos a la nueva clase y muestra cómo inicializar un objeto.

Nota:

Es posible que tu equipo muestre nombres o ubicaciones diferentes para algunos de los elementos de la interfaz de usuario de Visual Studio en las siguientes instrucciones. La edición de Visual Studio que se tenga y la configuración que se utilice determinan estos elementos. Para obtener más información, vea Personalizar el IDE.

Para definir una clase

  1. Cree un proyecto haciendo clic en Nuevo proyecto en el menú Archivo. Aparecerá el cuadro de diálogo Nuevo proyecto .

  2. Seleccione Aplicación de Windows en la lista de plantillas de proyecto de Visual Basic para que aparezca el nuevo proyecto.

  3. Para agregar una nueva clase al proyecto, haga clic en Agregar clase en el menú Proyecto. Aparecerá el cuadro de diálogo Agregar nuevo elemento.

  4. Seleccione la plantilla Clase.

  5. Asigne el nombre UserNameInfo.vb a la nueva clase y, a continuación, haga clic en Agregar para mostrar el código de la nueva clase.

    Public Class UserNameInfo
    End Class
    

    Nota

    Puede usar el editor de código de Visual Basic para agregar una clase al formulario de inicio escribiendo la palabra clave Class seguida del nombre de la nueva clase. El editor de código proporciona la instrucción End Class correspondiente.

  6. Defina un campo privado para la clase agregando el código siguiente entre las instrucciones Class y End Class:

    Private userNameValue As String
    

    Si declara el campo como Private significa que solo se puede usar dentro de la clase. Puede hacer que los campos estén disponibles desde fuera de una clase mediante modificadores de acceso, como Public que proporcionan más acceso. Para más información, consulte Niveles de acceso en Visual Basic.

  7. Para definir una propiedad para la clase, agregue el siguiente código:

    Public Property UserName() As String
        Get
            ' Gets the property value.
            Return userNameValue
        End Get
        Set(ByVal Value As String)
            ' Sets the property value.
            userNameValue = Value
        End Set
    End Property
    
  8. Para definir un método para la clase, agregue el siguiente código:

    Public Sub Capitalize()
        ' Capitalize the value of the property.
        userNameValue = UCase(userNameValue)
    End Sub
    
  9. Para definir un constructor parametrizado para la nueva clase, agregue un procedimiento denominado Sub New:

    Public Sub New(ByVal UserName As String)
        ' Set the property value.
        Me.UserName = UserName
    End Sub
    

    Se llama automáticamente al constructor Sub New cuando se crea un objeto basado en esta clase. Este constructor establece el valor del campo que contiene el nombre de usuario.

Para crear un botón para probar la clase

  1. Cambie el formulario de inicio al modo de diseño; para ello, haga clic con el botón derecho en su nombre en el Explorador de soluciones y, a continuación, haga clic en Diseñador de vistas. De forma predeterminada, el formulario de inicio para proyectos de aplicaciones Windows se denomina Form1.vb. Aparecerá el formulario principal.

  2. Agregue un botón al formulario principal y haga doble clic en él para mostrar el código del controlador de eventos Button1_Click. Agregue el código siguiente para llamar al procedimiento de prueba:

    ' Create an instance of the class.
    Dim user As New UserNameInfo("Moore, Bobby")
    ' Capitalize the value of the property.
    user.Capitalize()
    ' Display the value of the property.
    MsgBox("The original UserName is: " & user.UserName)
    ' Change the value of the property.
    user.UserName = "Worden, Joe"
    ' Redisplay the value of the property.
    MsgBox("The new UserName is: " & user.UserName)
    

Para ejecutar la aplicación

  1. Para ejecutar la aplicación, presione F5. Haga clic en el botón del formulario para llamar al procedimiento de prueba. Muestra un mensaje que indica que el UserName original es "MOORE, BOBBY", porque el procedimiento llamó al método Capitalize del objeto.

  2. Haga clic en Aceptar para descartar el cuadro de mensaje. El procedimiento Button1 Click cambia el valor de la propiedad UserName y muestra un mensaje que indica que el nuevo valor de UserName es "Worden, Joe".

Consulte también