Nein, in der JVM wird er danach nicht entfernt. Er bleibt auf dem Heap bis eine Garbage Collection durchgeführt wird. Das belastet den Garbage Collector - fast alle Verfahren dafür hängen von der Anzahl der Objekte ab, und Heapallokation ist auch bei den besten GC Methoden schneller. Man kann zwar durch Analysieren des Quellcodes herausfinden, ob ein Objekt nur lokal gebraucht wird, dazu muss man aber alle Methoden, die das Objekt als Parameter erhalten, analysieren - was Zeit kostet und in andere Optimierungen investiert werden könnte.