static成員和非static成員

2021-09-10 13:42:01 字數 634 閱讀 6970

1.靜態成員

(1)所有的static方法不允許呼叫非static定義的屬性或方法,因為靜態函式成員屬於類的成員,例項成員變數是屬於某個物件的,而靜態方法在執行時,並不一定存在物件,但是靜態方法可以使用靜態變數

(2)描述共享屬性,只需在屬性前新增static關鍵字即可,建立乙個類的多個例項,其static常量佔同乙個儲存區域static string country=「china」;

(3)訪問static屬性(類屬性)應使用類名稱.屬性名,super、this不能出現在靜態方法中,靜態優先於物件存在

(4)static屬性又稱為類屬性,儲存在全域性資料區的記憶體之中,所有物件都可以進行該資料區的訪問

(5) main()方法是乙個典型的靜態方法

2.非靜態成員(例項成員)

(1)所有的非static方法允許訪問static方法或屬性,因為例項函式成員作用於類的給定例項

(2)有的非static屬性(例項變數)必須在物件例項化後使用,而static屬性(類屬性)不受物件例項化限制

(3)訪問非static屬性(類屬性)應使用物件.屬性名

注:靜態變數—>類訪問

非靜態變數---->例項物件訪問

static成員函式和static成員

c 的靜態成員是和類關聯的,它屬於某個類,但是不屬於某個特定的物件。靜態成員變數只儲存乙份供所有物件共用。所以在所有物件中都可以共享它。使用靜態成員變數實現多個物件之間的資料共享不會破壞隱藏的原則,保證了安全性還可以節省記憶體。但是可以通過物件呼叫靜態成員函式,雖然我們一般不會這麼做 1 class...

const成員 和 static成員

1.const成員變數 2.const成員函式 3.static成員變數 4.static成員函式 純手敲,給自己加深印象 1.const成員變數 必須在建構函式初始值列表進行初始化,或者申明const成員變數為static,可在類內初始化 class account void show priva...

c語言中的static和c 中的static比較

c語言中 static如果是修飾的全域性變數表示,該變數不能被其他檔案使用,函式也是一樣.如果修飾區域性變數,那麼,該變數存放在靜態區,只能被初始化一次,生命週期隨之檔案的結束而結束.c 中 static修飾的變數,只能在類外初始化,而且,必須初始化,可以由類直接訪問,可以在同族類中實現資料共享,在...