title: garbage collector Issue
body: <p>this question is like my previous <a href="https://stackoverflow.com/questions/12182383/when-an-object-is-eligible-for-a-garbage-collector">one</a> 
  Given:</p>
  
  <pre><code>3. interface Animal { void makeNoise(); }
  4. class Horse implements Animal {
  5.   Long weight = 1200L;
  6.   public void makeNoise() { System.out.println("whinny"); }
  7.  }
  8.  public class Icelandic extends Horse {
  9.   public void makeNoise() { System.out.println("vinny"); }
  10.  public static void main(String[] args) {
  11.    Icelandic i1 = new Icelandic();
  12.    Icelandic i2 = new Icelandic();
  13.    Icelandic i3 = new Icelandic();
  14.    i3 = i1; i1 = i2; i2 = null; i3 = i1;
  15.  }
  16. }
  </code></pre>
  
  <p>When line 14 is reached, how many objects are eligible for the garbage collector?</p>
  
  <blockquote>
    <p>A. 0</p>
    
    <p>B. 1</p>
    
    <p>C. 2</p>
    
    <p>D. 3</p>
    
    <p>E. 4</p>
    
    <p>F. 6</p>
  </blockquote>
  
  <p>I chose A but the right answer is E, but I don't know Why?</p>