什么是VB.NET對象生命周期
VB.NET具有面向對象語言的一切特征,并其還為程序員帶來了一些不一樣的體驗。比如VB.NET對象的一些相關性能等。在這里,我們會介紹有關VB.NET對象生命周期的一些內容,希望能給大家帶來一些幫助。#t#
我們應當怎樣去正確的理解VB.NET對象生命周期呢?在這里就給出了一個恰當的解答:
當一個對象被銷毀時,Sub Destruct方法被系統自動調用,但不能被顯式調用。.NEt框架能夠在系統自認為一個對象并沒有使用價值的時候把該對象銷毀。但是切記,不象Class+Terminate和Sub New那樣,系統將會在上一次引用一個對象之后調用Sub Destruct這個方法。
1.帶參數的Sub New的構造函數
用戶可以通過在類的定義的任何地方定義Sub New過程來實現對類的構造函數。構造函數的***行必須是調用它的基本類的構造函數或者是當前類的其他構造函數。用戶必須確認基本類是在其他的類的初始化過程之前初始化的。但是令人驚訝的是,即使創建基本類,用戶也必須調用構造函數Mybase.New,因為所有的類都是最終從一個名為Object的類繼承而來的。在調用它的父類的構造函數以后,用戶可以在Sub New過程中加入一些另外的初始化的代碼。Sub New可以支持帶參數的構造函數,這些參數通過調用構造函數時,從過程中傳入的,例如:
- Dim t as truck=New Truck(18)
2.使用Sub Destruct作為析構函數
為了建立一個類的析構函數,用戶可以建立一個名為Sub Destruct的過程,并且可以入在類的定義的任何地方,在析構函數中寫入的代碼可以用來釋放其他的對象,關閉一個文件或者做其他的結束工作。下面的例子說明了怎樣通過一個帶參數的構造函數建立一個類,并且初始化一個屬性。
- Imports System
- Namespace TruckNamespace
- Module Module1
- Class Truck
- Private iWheels as Integer
- Sub New(initialWheels as integer)
- MyBase.New
- iWheels=initialWheels
- End Sub
- Sub Destruct()
- 'Place cleanup code here
- End Sub
- Property Wheels as Integer
- Get
- Wheels=iWheels
- End Get
- Set
- iWheels=Value
- End Set
- End Property
- End Class
- shared sub Main()
- Dim t as truck=New Truck(18)
- Console.WriteLine("The truck has"&_
- t.wheels&"wheels when initialized")
- End Sub
- End Module
以上就是我們為大家介紹的VB.NET對象生命周期的相關概念。

















