VB.Net Tutorial/Class Module/Destructor — различия между версиями

Материал из VB Эксперт
Перейти к: навигация, поиск
м (1 версия)
 
м (1 версия)
 
(нет различий)

Текущая версия на 12:55, 26 мая 2010

Destructor in three levels

Class A
    Public Sub New()
        Console.WriteLine("In class A constructor")
    End Sub
    Protected Overrides Sub Finalize()
        Console.WriteLine("In class A destructor")
        MyBase.Finalize()
    End Sub
End Class
Class B
    Inherits A
    Public Sub New()
        Console.WriteLine("In class B constructor")
    End Sub
    Protected Overrides Sub Finalize()
        Console.WriteLine("In class B destructor")
        MyBase.Finalize()
    End Sub
End Class
Class C
    Inherits B
    Public Sub New()
        Console.WriteLine("In class C constructor")
    End Sub
    Protected Overrides Sub Finalize()
        Console.WriteLine("In class C destructor")
        MyBase.Finalize()
    End Sub
End Class

Module Module1
    Sub Main()
        Dim objSample As New C()
    End Sub
End Module
In class A constructor
In class B constructor
In class C constructor
In class C destructor
In class B destructor
In class A destructor

Inherit destructor

Class Base
    Public Sub New()
        Console.WriteLine("The Base Class Constructor is Running")
    End Sub
    Protected Overrides Sub Finalize()
        Console.WriteLine("The Base Class Destructor is Running")
        MyBase.Finalize()
    End Sub
End Class
Class Derived
    Inherits Base
    Public Sub New()
        Console.WriteLine("The Derived Class Constructor is Running")
    End Sub
    Protected Overrides Sub Finalize()
        Console.WriteLine("The Derived Class Destructor is Running")
        MyBase.Finalize()
    End Sub
End Class

Module Module1
    Sub Main()
        Dim Sample As New Derived()
    End Sub
End Module
The Base Class Constructor is Running
The Derived Class Constructor is Running
The Derived Class Destructor is Running
The Base Class Destructor is Running