Yes, garbage colelction happens automatically. You should not need to manually run it, nor is it recommended. The whole point of garbage collection is that it should be transparent.
Please see: Tuning Garbage Collection with the 5.0 Java[tm] Virtual Machine
[BTW, there are many questions on SO related to java garbage collection]