Hola,
Bueno. Si no quieres que entremos, pues no entramos. Pero, se supone que un objeto que se encarga de inicializar ciertas variables debe encargarse de su destrucción. Para eso están los métodos constructores y destructores de un objeto. ¿No?
Entonces el "garbage colection" que planteas (según a mí se me ocurre) en qué consiste, ¿en liberar determinadas variables de un objeto (o varios) desde fuera de estos? ¿Pero no es más natural destruir los propios objetos que a su vez se encargarán de liberar las variables que sean menester?
Ahora, que si no quieres entrar... no entramos.