Lew schrieb:
> You make it sound so dire. Allocating these objects takes next to no
> time, GC will be fast since they'll all be unreachable, and you don't
> have to worry about it. Not only that, but Hotspot will probably
> optimize away the object calls in favor of primitives anyway, possibly
> enregistered.
The hotspot is not infinitely smart, and alloc/gc is not negliable.
Try the following two codes:
Variant 1:
Color red=new Color(0xff0000);
g.setColor(red);
for (int x=0; x<1000; x++) {
for (int y=0; y<1000; y++) {
g.drawRect(x,y,1,1);
}
}
Variant 2:
for (int x=0; x<1000; x++) {
for (int y=0; y<1000; y++) {
Color red=new Color(0xff0000);
g.setColor(red);
g.drawRect(x,y,1,1);
}
}
There is a huge difference between the two
in performance.
Similarly one can waste performance in JDBC
drivers or what ever...
Best Regards


|