程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> 關於C語言 >> C#中的結構與類的總結(1)

C#中的結構與類的總結(1)

編輯:關於C語言

總結起來,兩者共有如下區別:

1、結構是值類型,類則是引用類型。因此前者是放在棧(Stack)裡,後者則僅僅是將引用地址存放在棧裡,而具體的值則存放在堆(heap)裡。如下圖所示:

2、據第1點可以得出結論,那就是類對象通常用來傳遞大數據,而結構對象則用來傳遞小數據。

3、類可以被繼承,而結構則不支持。

4、結構對象不能像類對象一樣賦值為null。

5、結構不能像類一樣定義析構器。

6、結構不能像類一樣定義為抽象的。

7、在結構中不能重寫方法,除非是object類型的如下方法:

Equals()

GetHashCode()

GetType()

ToString()

若要讓結構具有多態特性,可以讓其實現接口。

8、在類中定義的事件是線程安全的,而結構則不是。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved