progs.biz  
Начало>VB.NET>Основы>Урок 33
C#
VB.NET
Visual C++.NET
ASP.NET
Visual C++ 6
WinAPI
C/C++
Delphi
C++ Builder
Java
SQL
PHP
DirectX
Visual Basic 6.0
Ассемблер
Интернет
Сист. прогр-ние
Pocket PC
Обзор книг
Обзор программ

Б. Ивьен и др. Visual Basic .NET. Библия пользователя
Б. Ивьен и др. Visual Basic .NET. Библия пользователя
Заказать на Озоне



Яндекс-цитирования

Основы VB.NET
Урок 33. В каком порядке вызываются конструкторы?

Если у нас есть несколько классов, образующих иерархию, то при создании экземпляра класса-потомка сначала вызываются конструкторы для его предков (начиная с самого первого класса-предка, и далее вплоть до непосредственного предка нашего класса) и только потом выполняется код конструктора самого класса. Вот пример:

Class A
    Sub New()
        Console.WriteLine("A")
    End Sub
End Class

Class B
    Inherits A
    Sub New()
        Console.WriteLine("B")
    End Sub
End Class

Class C
    Inherits B
    Sub New()
        Console.WriteLine("C")
    End Sub
End Class

Class test
    Shared Sub Main()
        'Вызывается конструктр класса C
        'На консоль выведется "ABC"
        Dim b1 As New C()
    End Sub
End Class

При создании нового экземпляра класса C вызывается конструктор его "дедушки" - класса A (этот конструктор выведет "A"), затем конструктор класса B (он выведет "B") и, наконец, конструтор самого класса C (выведет "C").

Рассылки нашего сайта на Subscribe.Ru
Visual C++, MFC
C# и .NET
VB.NET
ASP.NET new!
Win API
C/C++
Delphi
Java
HTML, PHP, mySQL, WEB-дизайн
Flash MX
C++ Builder
Ассемблер
SQL Server
DirectX
Обзор книг
Обзор программ
Новости сайта progs.biz


 
 
Копирование любых материалов сайта без разрешения авторов и владельцев сайта запрещено.
© 2002-2008 сайт progs.biz
© 2002-2008 Игорь Алексеев