Ursprungligen inskrivet av badboll
Nej, inte nödvändigtvis. Javas GC är inte deterministisk, det går inte att veta säkert när ett objekt tas bort ur minnet. Du blandar ihop det med hur RAII fungerar i C++. Dessutom tror jag inte man kan allokera objekt på stacken alls, inte explicit iaf (VM:en kanske gör det som någon skum optimering i särskilda fall), också till skillnad från i C++.
Du kan ha rätt vad gäller lokala primitiva variabler, men med objekt så är det som sagt inte alls säkert att minnet för dem samlas upp när de går "out of scope", även om de har blivit "orphaned".