Conhecendo a coleta de lixo

Arquivo: Lampada.java
// Lampada.java

// Classe Lampada

public class Lampada {
   // atributos
   public boolean acesa;

   // metodos
   public void ligar() {
      acesa = true;
   }
   public void desligar() {
      acesa = false;
   }
}
/*
Lampada
(from default)
--------------
+ acesa boolean
--------------
+ desligar()
+ ligar()
*/
Arquivo: testando_coleta_de_lixo.java
// testando_coleta_de_lixo.java

public class testando_coleta_de_lixo {

   public static Lampada lamp;

   public static void main (String args[]){

      lamp = new Lampada();

      lamp.ligar();
      System.out.println("Lampada Criada (Acesa = " + lamp.acesa + ")");
      lamp.desligar();
      System.out.println("Lampada Criada (Acesa = " + lamp.acesa + ")");

      lamp = null;

      try {
         lamp.ligar();
         System.out.println("Lampada Criada (Acesa = " + lamp.acesa + ")");
         lamp.desligar();
         System.out.println("Lampada Criada (Acesa = " + lamp.acesa + ")");
      } catch (java.lang.NullPointerException e) {
         System.out.println("O Construtor lamp esta na Coleta de Lixo.");
      }

      Runtime rt = Runtime.getRuntime();

      System.out.println("Memoria: " + rt.freeMemory());

      System.out.println("Liberando memoria com System.gc()");
      System.gc();
      System.out.println("Memoria: " + rt.freeMemory());

      System.out.println("O Construtor lamp NAO esta mais na Coleta de Lixo.");

      lamp = new Lampada();

      lamp.ligar();
      System.out.println("Lampada Criada (Acesa = " + lamp.acesa + ")");
      lamp.desligar();
      System.out.println("Lampada Criada (Acesa = " + lamp.acesa + ")");

      System.out.println("Memoria: " + rt.freeMemory());
   }
}
/*
Resultado:
Lampada Criada (Acesa = true)
Lampada Criada (Acesa = false)
O Construtor lamp esta na Coleta de Lixo.
Memoria: 61464664
Liberando memoria com System.gc()
Memoria: 62332176
O Construtor lamp NAO esta mais na Coleta de Lixo.
Lampada Criada (Acesa = true)
Lampada Criada (Acesa = false)
Memoria: 61983512
*/