2015-04-04 82 views
0

我有一個java類,其中包含三個整數A,B和C. 我在客戶端和服務器應用程序都使用這個類。 但我從不在服務器端訪問A. 當我在服務器上創建該類的對象時,Java是否會爲A分配內存?未被訪問的變量的Java對象內存分配

請注意,它不是傳輸對象。我只是在這兩個應用程序中使用這個類來避免重複的代碼。

回答

0

在你的服務器端,如果你創建一個包含整數a的對象,那麼不管A是否是初始化或不初始化內存分配 -

int A; //only declaration of int variable, by default it set to 0 
int B = 5; //initialization and declaration, now B is set to 5 

在這兩種情況下AB是實例變量在類的任何方法之外但在類內部聲明。對於方法局部變量,你必須明確地初始化它們。

3

是的內存將被分配給整數成員 - 它與它們是否在你的代碼中被訪問無關。因此,對於以下內容:

class MyClass { 

    int a; 
    int b; 
    int c; 

    ... 
} 

默認情況下,成員初始化爲零。即使字段類型爲參考類型Integer,但默認值爲null,但該參考仍需要分配內存(請參閱What exactly is null in Java memory)。