title: Why it's not early binding?
body: <pre><code>class a{
      void display(){
          System.out.println("display1");
      }
  }
  
  class b extends a{
      void display(){
          System.out.println("display1b");
      }
  }
  
  class c extends b{
      void display(){
          System.out.println("display1c");
      }
  }
  
  class ab {
      public static void main(String args[]){
          a mn=new c();
          mn.display();
      }
  }
  </code></pre>
  
  <p>it's example of late binding,but when i compile this code and then decompile using cavaj
  i found this code ab.java:</p>
  
  <pre><code>class ab {
      ab(){}
  
      public static void main(String args[]){
          c c1 = new c();
          c1.display();
      }
  }
  </code></pre>
  
  <p>If it's late binding then compiler not must should know that display() method  is from c class ,
  but here it's know because it replace<br>
   a mn=new c();
    with<br>
     c c1 = new c();
   ,so this is early binding??</p>