VB.NET的結構和階級有什麽區別?謝謝大家的提問。
結構是值類型,而類是引用類型。結構由堆棧分配。class使用heap來分配結構的成員,默認為public,而class的成員變量和常量默認為private,其他成員默認為public。這與VB6兼容。結構必須至少有壹個成員變量或事件成員不是由* * * *共享的,並且該類可以完全為空。結構的成員不能聲明為受保護的;班級成員可以。僅當結構過程是共享Sub時,並且僅通過AddHandler語句,結構過程才能處理事件;任何類過程都可以用Handles關鍵字或AddHandler語句處理事件。結構變量聲明不能指定初始值設定項、New關鍵字或數組的初始大小。類變量聲明可以。結構從ValueType類繼承,不能從任何其他類型繼承;類可以從任何不是ValueType的類繼承,但是類永遠不能析構。因此,公共語言運行庫(CLR)從不調用它的Finalize方法,類由垃圾回收器析構。當沒有對類的引用時,調用其Finalize方法結構不需要構造函數,而類需要的是結構只能有壹個帶參數的非獨占構造函數;類可以有帶參數或不帶參數的構造函數。每個結構都有壹個不帶參數的默認構造函數來初始化其成員。您可以重新定義該函數。