// Overriding:
/*
class A {
    public int x=1;
    public A(int x) { this.x = x; get_x(); }
    public void get_x() { System.out.println("A: "+x); }
}
class B extends A {
    public B(int x) { super(x); }
    public void get_x() { System.out.println("B: "+x); }
}
public class inherit5_demo {
    public static void main(String[] args) {
	new B(5).get_x();
    }
}
// output:
// B: 5
// B: 5
*/

// What if $get_x()$ were NOT overriden?

class A {
    public int x=1;
    public A(int x) { this.x = x; get_x(); }
    public void get_x() { System.out.println("A: "+x); }
}
class B extends A {
    public B(int x) { super(x); }
    // public void get_x() { System.out.println("B: "+x); }
}
public class inherit5_demo {
    public static void main(String[] args) {
	new B(5).get_x();
    }
}
// output:
// A: 5
// A: 5
