两个吃奶一个添下面视频_人妻第一页香蕉网_欧美xxxx少妇_妺妺窝人体色www婷婷

實例變量和類變量的定義

在聲明成員變量時,用關(guān)鍵字static給予修飾的稱作類變量,類變量也稱為static變量或靜態(tài)變量,而沒有用關(guān)鍵字static給予修飾的稱作實例變量。


例如:

class Main {
    float x; //實例變量
    static int y; //類變量
}


注意:

關(guān)鍵字static需要放在變量的類型前。


實例變量和類變量的區(qū)別

1. 不同對象的實例變量互不相同:

一個類通過使用new運算符可以創(chuàng)建多個不同的對象,這些對象將被分配不同的成員變量,分配給不同的對象的實例變量占有不同的內(nèi)存空間,改變其中一個對象的實例變量不會影響其他對象的實例變量。


2. 所有對象共享類變量:

如果類中有類變量,當使用new運算符創(chuàng)建多個不同的對象時,分配給這些對象的這個類變量占有相同的一處內(nèi)存,改變其中一個對象的這個類變量會影響其他對象的這個類變量,也就是說對象共享類變量。


3. 通過類名直接訪問類變量:

當Java程序執(zhí)行時,類的字節(jié)碼文件被加載到內(nèi)存,如果該類沒有創(chuàng)建對象,類中的實例變量不會被分配內(nèi)存。但是,類中的類變量,在該類被加載到內(nèi)存時,就分配了相應(yīng)的內(nèi)存空間。如果該類創(chuàng)建對象,那么不同對象的實例變量互不相同,即分配不同的內(nèi)存空間,而類變量不再重新分配內(nèi)存,所有的對象共享類變量,即所有的對象的類變量是相同的一處內(nèi)存空間,類變量的內(nèi)存空間直到程序退出運行,才釋放所占有的內(nèi)存。

因此,類變量不僅可以通過某個對象訪問,也可以直接通過類名訪問,而對象的實例變量可以通過該對象訪問,但不能使用類名訪問。


點贊(0)

C語言網(wǎng)提供由在職研發(fā)工程師或ACM藍橋杯競賽優(yōu)秀選手錄制的視頻教程,并配有習題和答疑,點擊了解:

一點編程也不會寫的:零基礎(chǔ)C語言學練課程

解決困擾你多年的C語言疑難雜癥特性的C語言進階課程

從零到寫出一個爬蟲的Python編程課程

只會語法寫不出代碼?手把手帶你寫100個編程真題的編程百練課程

信息學奧賽或C++選手的 必學C++課程

藍橋杯ACM、信息學奧賽的必學課程:算法競賽課入門課程

手把手講解近五年真題的藍橋杯輔導課程

Dotcpp在線編譯      (登錄可減少運行等待時間)