
class A {
    public int x;
    public int y=10;
    public A(int x) { 
	this.x = x;
	System.out.println("x (A): "+x);
	System.out.println("y (A): "+y);	
    }
}
class B extends A { 
    public int z=100;
    public B(int x) {
	super(x-1);
	System.out.println("x (B): "+x);
	System.out.println("y (B): "+y);	
	System.out.println("z (B): "+z);	
    }
}

public class inherit2_vars {
    public static void main(String[] args){
	
	System.out.println("\nTest 1:");
	B v1 = new B(2);
	System.out.println("v1 uses "+v1.getClass());
	System.out.println("accessing x: "+v1.x); 

	System.out.println("\nTest 2:");
	A v2 = new B(2);
	System.out.println("v2 uses "+v2.getClass());
	System.out.println("accessing x: "+v2.x); 

    }
}

/* sample output:
Test 1:           Test 2:         
x (A): 1	  x (A): 1        
y (A): 10	  y (A): 10       
x (B): 2	  x (B): 2        
y (B): 10	  y (B): 10       
z (B): 100	  z (B): 100      
v1 uses class B	  v2 uses class B 
accessing x: 1	  accessing x: 1  
*/







