C 基礎 靜態成員和靜態類

2021-06-20 16:21:48 字數 1155 閱讀 4309

靜態成員

1. 靜態成員是被static關鍵字修飾的. 是屬於類的. 通過類名.靜態成員來訪問.

2. 例項成員 沒有被static關鍵字修飾的 是屬於物件的.通過物件名.例項成員來訪問.

3. 例項成員屬於物件.

4. 在這個類第一次被載入的時候,這個類下面的所有的靜態成員會被載入

5. 靜態成員只被建立1次. 所以靜態成員只有1份.  例項成員 有多少個物件 就有多少份.

6. 靜態成員會被建立在靜態儲存區中.一旦建立 直到程式退出才會被**.

7. 變數需要被共享的時候,方法需要被反覆呼叫的時候.  就可以將這些成員定義為靜態成員. 

8. 在靜態方法中不能直接呼叫例項成員 因為靜態方法被呼叫時候 物件還有可能不存在.

9. this/base關鍵在靜態方法中不能使用 因為有可能物件還不存在.

10. 可以建立這個類的物件 指定物件的成員在 靜態方法中操作.

11. 在例項方法中 可以呼叫靜態成員  因為這個時候 靜態成員肯定存在.

靜態成員續

1. 靜態成員屬於類 1個類第一次被訪問的時候 這個類下面的所有的靜態成員會被載入到靜態儲存區.

靜態成員只存在1份

靜態成員1旦建立 程式退出的時候才會被**.

2 例項成員成員屬於物件,. 隨著物件的建立而建立 被gc**的時候. 

在靜態方法中不能直接訪問例項成員

第一次類的成員被訪問的時候 靜態建構函式執行.

只執行1次.

在執行第一訪問之前 先執行靜態建構函式 再接著執行你的操作.

靜態類

1.靜態類 被static關鍵字修飾.

2.靜態類中只能宣告靜態成員

3.靜態類中不能有例項建構函式.

4.靜態類不能被例項化 因為沒有例項成員 例項化無意義.

5.靜態類不能被繼承.

6.靜態類的本質是1個 抽象的密封類. 所以不能被繼承也不能被例項化.

7.如果1個類下面的所有成員都需要被共享 那麼就可以把這個類定義為靜態類 不能宣告1個靜態型別的變數.

靜態建構函式. 非靜態類也可以有靜態建構函式.

這個類的成員第一次被訪問之前 就會執行靜態建構函式.

靜態建構函式只被執行一次.

靜態類和靜態類成員(C )

靜態類與非靜態類基本相同,但存在乙個區別 靜態類不能例項化。也就是說,不能使用 new 關鍵字建立靜態類型別的變數。因為沒有例項變數,所以要使用類名本身訪問靜態類的成員。例如,如果名為 utilityclass 的靜態類有乙個名為 methoda 的公共方法,則按下面的示例所示呼叫該方法 c uti...

C 靜態類成員和靜態類成員函式

一 靜態類成員 include class stringbad 靜態類成員有乙個特點 無論建立多少物件,程式都只能建立乙個靜態變數副本。也就是說所有物件共享同乙個靜態成員,就像你家 可供全家家庭成員共享一樣。假設建立了10個stringbad物件,將有10個str成員和len成員,但是只共享乙個nu...

靜態類和靜態成員小結

靜態類的總結 1.靜態類和非靜態類十分類似,但是有一點,靜態類是不能被例項化化的,因為靜態類中就沒有例項化的變數。也就是說,對於靜態類不能使用new關鍵字。要想訪問靜態類中的成員,必須用類名來索引。2.那麼什麼時候使用靜態模擬較合適呢?當乙個類的方法只會處理到使用者輸入的變數,而不會涉及該類自身的字...