Bocs, nem olvastam a hozzaszolasokat, de kapasbol felmerul a kulonbozo referencia tipusok hasznalata (vagyis a _nem_ hasznalata): http://docs.oracle.com/javase/7/docs/api/java/lang/ref/package-summary…
Tipikusan hosszan futo, sok memoriat hasznalo alkalmazasoknal (pl. cache) kritikus, hogy ne agyatlanul hasznald az alapertelmezett "strong" referenciakat illetve az azokra epulo adattipusokat, hanem - ahol indokolt - ott terj at Weak/Soft/Phantom referenciara (pl. https://docs.oracle.com/javase/7/docs/api/java/util/WeakHashMap.html).
Itt peldaul egy erdekes cikk a temaban: http://www.ibm.com/developerworks/library/j-jtp11225/
Persze nem tudom, hogy ez rajtatok konkretan mennyire segit, illetve nem is feltetelezem, hogy a java fejlesztoitek nem kapasbol ezzel kezdtek a memoriaproblemak utani nyomozast - ezt csupan neked irtam, mint javahoz nem erto, amde erdeklodo egyennek :)