[C#]基礎——注意事項

1. 靜態類必須直接繼承Object函數

2. 靜態類不能實現接口,不能繼承其餘類(除了Object)對象

3.靜態類中不能有實體方法繼承

4.實體類中能夠有靜態方法,使用同 靜態類接口

5.readonly屬性能夠在構造函數中初始化,static readonly能夠在static 構造函數中初始化,所以他們是運行時肯定內存

6.const屬性 只能在聲明是初始化,他在編譯時肯定。 若是要使用const屬性,它和靜態類中的靜態方法/屬性使用方法一致編譯

7.接口中的方法不須要可訪問性關鍵字的修飾變量

 

GC 流程:構造函數

假設堆上全部都是垃圾 -> 根據ROOT(靜態熟悉,方法實參,局部變量,CPU寄存器)判斷對象是否正在被使用:標記 -> 清理未標記的垃圾 -> 壓縮堆 ->調整ROOT值已經 未回收對象間的引用關係(因爲內存地址在壓縮階段被更改) -> 設置NextObjPrt 的地址爲GC壓縮結束後的最後對象的地址+對象大小+2*32位或者64位(即2*4或者2*8個字節)引用

相關文章
相關標籤/搜索