比如这个aa和bb:
public static void main(String[] args)
{
a();
b();
} static void a()
{
int aa = 0;
aa += 1;
}
static void b()
{
int bb = 0;
bb += 1;
}
public static void main(String[] args)
{
a();
b();
} static void a()
{
int aa = 0;
aa += 1;
}
static void b()
{
int bb = 0;
bb += 1;
}
只是加了这个Static之后我就不确定了加了之后呢?
猜想一下,如果你的方法是静态的。那里面的变量应该有继承静态。在java中静态变量不能被定义在静态方法中。。会报语法错误。。你可以试着在试调里面测试一下你定义的变量是否有值
这就是我的疑问。那如果静态方法里new了一个Stringbuilder,每次进来都会new,那就不会回收了?
你到底要说什么?每次是new呀,但是new出来的对象又不是一个,在内存中地址也没什么联系,之前生成的那些当需要的时候不就被回收了吗?跟每次new有什么关系吗?又不是静态变量公用地址的。