亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

VB.NET 里 結構(Structure)和類(Class)有什么區別?

VB.NET 里 結構(Structure)和類(Class)有什么區別?

瀟湘沐 2019-05-27 10:06:56
VB.NET 里 結構(Structure)和類(Class)有什么區別?
查看完整描述

3 回答

?
MYYA

TA貢獻1868條經驗 獲得超4個贊

Structure是值類型,classe是引用類型 Structure用棧來分配; classe用堆來分配 structure的成員默認情況下是公共的,而Class的成員變量和常量默認情況下是私有的而其它成員默認情況下是公共的.這與VB6是相兼容的。 structure必須至少有一個非共享的成員變量或事件成員,class可以完全是空的. Structure的成員不能聲明成Protected; class成員可以. 一個structure過程只能在它是一個Shared Sub時才能handle events而且只能通過AddHandler語句;而任何class過程都可以handle events,既可以用Handles關鍵字或 AddHandler語句。 Structure variable declarations cannot specify initializers, the New keyword, or initial sizes for arrays; class variable declarations can. Structure繼承自ValueType類,不能從其它任何類型繼承; classes可以從任何不是ValueType的類繼承 Structure不能繼承而Class可以 Structure從來不析構terminated因此common language runtime (CLR)從來不調用它的Finalize方法,classe由垃圾回收器進行析構, 當沒有任何對該類的引用時調用它的Finalize方法 structure 不需要一個構造函數,而Class需要 Structure只能有帶參數的非共享的構造函數; classes 可以有帶或不帶參數的構造函數. 每個Structure都有一個默認的不帶參數的構造函數以對其成員進行初始化,你可以重新定義該函數

查看完整回答
反對 回復 2019-06-01
?
慕慕森

TA貢獻1856條經驗 獲得超17個贊

它們都可以相當于描述一個實體!
struct 類型是一種值類型,通常用來封裝小型相關變量組,例如,矩形的坐標或庫存商品的特征。下面的示例顯示了一個簡單的結構聲明。
結構可以實現接口,但它們無法繼承另一個結構。因此,結構成員無法聲明為 protected。
class 類只能從一個基類繼承實現。但是,一個類可以實現一個以上的接口。

查看完整回答
反對 回復 2019-06-01
  • 3 回答
  • 0 關注
  • 1853 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號