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


Практическое руководство. Использование ключевого слова New

Обновлен: Ноябрь 2007

Для создания экземпляра класса используется ключевое слово New. В отличие от типов значений, например Integer и Double, объекты являются ссылочными типами и должны явно создаваться перед использованием. Например, рассмотрим следующие две строки кода:

Dim Button1 As System.Windows.Forms.Button
Dim Button2 As New System.Windows.Forms.Button()

Первый оператор объявляет переменную объекта, содержащую ссылку на объект кнопки. Однако переменная Button1 содержит значение Nothing до тех пор, пока ей не будет присвоен объект типа Button. Второй оператор также определяет переменную, содержащую объект кнопки, но ключевое слово New создает объект кнопки и назначает его переменной Button2.

Поскольку формы и элементы управления фактически являются классами, ключевое слово New используется для создания новых экземпляров этих элементов.

Создание новых экземпляров класса с помощью New

  1. Откройте новый проект Windows Application и поместите кнопку и несколько других элементов управления на форму с именем Form1.

  2. Добавьте следующий код к процедуре события Click кнопки:

    Dim f As New Form1
    f.Show()
    
  3. Запустите приложение и нажмите кнопку несколько раз.

  4. Сдвиньте в сторону переднюю форму. Поскольку форма является классом с видимым интерфейсом, будут видны дополнительные копии. Каждая копия имеет те же элементы управления в тех же положениях, что и на исходной форме на этапе разработки.

Ключевое слово New также используется для создания объектов внутри классов. В следующей процедуре представлен пример.

Отображение процесса создания экземпляров класса с помощью New

  1. Откройте новый проект и поместите кнопку на форму с именем Form1.

  2. Чтобы добавить класс в проект, в меню Проект выберите пункт Добавить класс.

  3. Назовите новый класс ShowMe.vb.

  4. Добавьте следующую процедуру в ShowMe:

    Public Class ShowMe
        Sub ShowFrm()
            Dim frmNew As Form1
            frmNew = New Form1
            frmNew.Show()
            frmNew.WindowState = FormWindowState.Minimized
        End Sub
    End Class
    
  5. Добавьте следующий код для обработки события Click кнопки Button1 в форме.

    Protected Sub Button1_Click(ByVal sender As System.Object, _
          ByVal e As System.EventArgs) Handles Button1.Click
        Dim clsNew As New ShowMe
        clsNew.ShowFrm()
    End Sub
    
  6. Для использования данного примера запустите приложение и нажмите кнопку несколько раз. При создании каждого нового экземпляра класса ShowMe в панели задач появляется значок свернутой формы

См. также

Другие ресурсы

Создание и использование объектов