Поделиться через


Пошаговое руководство. Определение классов (Visual Basic)

В этом пошаговом руководстве показано, как определить классы, которые затем можно использовать для создания объектов. В нем также показано, как добавить свойства и методы в новый класс и продемонстрировать, как инициализировать объект.

Замечание

На компьютере могут отображаться различные имена или расположения для некоторых элементов пользовательского интерфейса Visual Studio в следующих инструкциях. Выпуск Visual Studio, который у вас есть, и параметры, которые вы используете, определяют эти элементы. Дополнительные сведения см. в разделе Персонализация интегрированной среды разработки.

Определение класса

  1. Создайте проект, нажав кнопку "Создать проект " в меню "Файл ". Откроется диалоговое окно Создание проекта .

  2. Выберите приложение Windows из списка шаблонов проектов Visual Basic, чтобы отобразить новый проект.

  3. Добавьте новый класс в проект, нажав кнопку "Добавить класс " в меню "Проект ". Откроется диалоговое окно Добавление нового элемента.

  4. Выберите шаблон класса .

  5. Присвойте новому классу UserNameInfo.vbимя и нажмите кнопку "Добавить ", чтобы отобразить код для нового класса.

    Public Class UserNameInfo
    End Class
    

    Замечание

    Редактор кода Visual Basic можно использовать для добавления класса в форму запуска, введя Class ключевое слово, за которым следует имя нового класса. Редактор кода предоставляет соответствующую End Class инструкцию.

  6. Определите приватное поле для класса, добавив следующий код между операторами Class и End Class.

    Private userNameValue As String
    

    Объявление поля как Private означает, что оно может использоваться только в классе. Поля можно сделать доступными извне класса, используя модификаторы доступа, такие как Public, которые расширяют права доступа. Дополнительные сведения см. в разделе "Уровни доступа" в Visual Basic.

  7. Определите свойство для класса, добавив следующий код:

    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. Определите метод для класса, добавив следующий код:

    Public Sub Capitalize()
        ' Capitalize the value of the property.
        userNameValue = UCase(userNameValue)
    End Sub
    
  9. Определите параметризованный конструктор для нового класса, добавив процедуру с именем Sub New:

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

    Конструктор Sub New вызывается автоматически при создании объекта на основе этого класса. Этот конструктор задает значение поля, в котором содержится имя пользователя.

Создание кнопки для тестирования класса

  1. Измените форму запуска на режим конструктора, щелкнув правой кнопкой мыши его имя в обозревателе решений и выбрав конструктор представлений. По умолчанию форма запуска для проектов приложений Windows называется Form1.vb. Затем появится основная форма.

  2. Добавьте кнопку в основную форму и дважды щелкните ее, чтобы отобразить код обработчика Button1_Click событий. Добавьте следующий код для вызова процедуры тестирования:

    ' 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)
    

Запуск приложения

  1. Запустите приложение, нажав клавишу F5. Нажмите кнопку в форме, чтобы вызвать процедуру тестирования. В нем отображается сообщение о том, что исходный UserName — это "MOORE, BOBBY", потому что процедура вызвала метод Capitalize объекта.

  2. Нажмите кнопку "ОК" , чтобы закрыть окно сообщения. Процедура Button1 Click изменяет значение UserName свойства и отображает сообщение о том, что новое значение UserName — Worden, Joe.

См. также