結構體和類的區(qū)別
?1.寫法區(qū)別: 結構體-struct ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?類-class
?2.類型區(qū)別: 結構體 - 值類型(棧區(qū)) ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 類 - 引用類型(堆區(qū))
?3.所有結構的成員默認都是public ? (有點問題)
? ?類的變量和常量數(shù)則默認為private,不過其他類成員默認都是public
4.結構成員不能被聲明為protected ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 類的成員可以
?5.結構是隱式繼承字Value Type類张足,而不能繼承任何其他類型触创。 ? ? ? ? 類則可以繼承自Value Type以外的任何類
?6.結構是無法被繼承 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?類可以
結構體:
結構體的默認構造不允許寫,因為系統(tǒng)已經(jīng)給你提供了为牍。
沒有析構函數(shù)
沒有 abstract 和 sealed(因為不能繼承)
不能有protected 修飾符
可以不使用new 初始化
在結構中初始化實例字段是錯誤的
類:
有默認的構造函數(shù)
有析構函數(shù)
可以使用 abstract 和 sealed
有protected 修飾符
必須使用new 初始化