我有一个包含三个整数A,B和C的java类。 我在客户端和服务器应用程序上都使用此类。 但我从不在服务器端访问A. 当我在服务器上创建该类的对象时,Java甚至会为A分配内存吗?
请注意,这不是转移对象。我只是在两个应用程序中使用该类来避免重复代码。
答案 0 :(得分:3)
是的,将为整数成员分配内存 - 它与是否在代码中访问它们无关。所以对于以下内容:
class MyClass {
int a;
int b;
int c;
...
}
默认情况下,成员初始化为零。即使字段类型是引用类型Integer
,默认值仍为null
,但引用仍需要分配内存(请参阅What exactly is null in Java memory)。
答案 1 :(得分: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
在这两种情况下,A
和B
都是在类的任何方法之外但在类内部声明的实例变量。对于方法局部变量,您必须显式初始化它们。