Can anyone clarify me. Here instance method is overridden but variable is not.
output is: B 10 
class A{
    int i=10;
    public void name(){   
        System.out.println("A");
    }
}
class B extends A{
    int i=20;
    public void name(){        
        System.out.println("B");
    }  
}  
public class HelloWorld { 
    public static void main(String[] args){       
        A a = new B();
        a.name();
        System.out.println(a.i);
    }
}
 
     
     
    