Отправляет email-рассылки с помощью сервиса Sendsay

Visual Basic.NET. Уроки

  Все выпуски  

Visual Basic.NET. Уроки


Информационный Канал Subscribe.Ru

Основы VB.NET. Уроки с сайта http://progs.biz

Рассылка №12

Основы VB.NET. Урок 7. Конструкторы.

Полные версии уроков (с картинками) можно найти по адресам
Урок 7. Конструкторы.

Основы VB.NET. Урок 7. Конструкторы

Конструкторы класса можно представлять себе как методы класса, которые вызываются при создании нового экземпляра класса с помощью оператора new. Например, тут вызывается конструктор:

Dim cl As New MyClass()

Обычно в конструкторе происходит задание некотрых стандартных значений для полей класса.

Конструкторы в VB.NET, в отличие от C-подобных языков, имеют имя new (в C-подобных языках, как известно, имя конструктора совпадает с именем класса).

Вот пример класса с конструктором:

Class Dice
    Private r As New Random()
    Private n As Integer 'Количество граней у кубика
    Public Function GetRandom()
        'Бросание кубика
        Dim k As Integer
        k = r.Next Mod n + 1
        Return k
    End Function
    'Конструктор без параметров
    Public Sub New()
        n = 6
    End Sub
End Class

Этот класс представляет из себя игральный кубик с n гранями (т. е. при бросании такой кубик может выдавать случайные числа от 1 до n). Устройство этого класса более-менее ясно из комментариев. Как вы видите, в классе есть конструктор с именем new:

    Public Sub New()
        n = 6
    End Sub

В этом конструкторе переменной n, отвечающей за число граней у нашего "кубика", присваивается стандартное значение 6.

Испытать наш класс можно, например, так:

Class Test
    Public Shared Sub Main()
        Dim d As Dice
        'Вызов конструктора без параметра
        d = New Dice()
        'Бросаем кость
        Console.WriteLine(d.GetRandom())
    End Sub
End Class

Конструкторов у класса может быть несколько. Все они называются New, и должны различаться или типом параметров, или их количеством, или и тем и другим. Например, в наш класс можно добавить еще один конструктор с целочисленным параметром, котрый будет проеделять, сколько граней имеет наш "кубик":

Class Dice
    ...
    'Конструктор с параметром
    Public Sub New(ByVal n As Integer)
        MyClass.n = n
    End Sub
    ...
End Class

В тестовом классе этот конструктор можно вызвать, например, так:

        Dim d As Dice
        'Вызов конструктора с параметром
        d = New Dice(12)

Созданный таким образом экземпляр "кубика" будет выдавать случайные числа от 1 до 12.

Наверх
Рассылки Subscribe.Ru
Новости сайта progs.biz
Уроки по C++ Builder
  • Краткое описание всех новых уроков и материалов на сайте progs.biz. Основные направления - языки программирования (Visual C++, Visual Basic.NET, C#, Delphi, Java), WEB-дизайн (HTML, PHP, PhotoShop, SSI), базы данных.
  • Уроки по программированию на C++ Builder. Библиотека VCL, создание собственных компонентов, работа с базами данных, примеры, FAQ. Уроки разбиты на серии. Каждая серия независима от других.

Copyright Алексеев Игорь, 2002

Copyright сайт progs.biz, 2002



http://subscribe.ru/
E-mail: ask@subscribe.ru
Отписаться
Убрать рекламу

В избранное