C#---靜態和非靜態的總結

1、靜態類中不可以定義非靜態成員,只允許存在靜態成員;

2、非靜態類中可以定義靜態成員和非靜態成員;

3、調用非靜態成員,使用 對象名 . 方法名  ;調用靜態成員,使用 類名 . 方法名;

4、靜態方法中不能訪問非靜態成員,只能訪問靜態成員;非靜態方法中可以訪問靜態方法和非靜態方法;

5、靜態類不可以創建對象,也就是說靜態類無法實例化,這就是類名 . 方法名 訪問靜態成員的原因。

6、如果想把一個類當做“工具類”經常去使用,可以考慮將類寫成靜態的。例如系統的console類,在使用裏面的 console.readkey()這個方法時可以直接通過 類名.方法名。而不需要向非靜態類那樣先去創建一個對象。

7、靜態類在整個項目中資源共享。
8、內存分爲 堆、棧、靜態存儲區,靜態類就存放在靜態存儲區。靜態類不能太多,靜態存儲區在程序結束纔會 由系統GC釋放。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章