I saw some piece of code looks like
public class A {
public void doSomething(B b) {
b.addSometing("queue1", getDefault());
b.addSometing("queue2", getDefault());
b.addSometing("queue3", getDefault());
}
private C getDefault() {
C c = new C();
c.setAutoCreate(true);
c.setExired(false);
c.setDelay(3500);
return c;
}}
if We put C c
var. (which is default for all objects of class A ) for every object of class A
, we just use a lot of memory for large of objects of class A
, maybe better to make C c
static ? We will create only one instance of class C
for whole class and use it to every object of class A
. If we do so ,after that code will like like
public class A {
private static C c = new C();
static {
c.setAutoCreate(true);
c.setExired(false);
c.setDelay(3500);
}
public void doSomething(B b) {
b.addSometing("queue1", c);
b.addSometing("queue2", c);
b.addSometing("queue3", c);
}
}
I think it's better way , perhaps I'm wrong . Please give me advise .