teloon
3/16/2012 - 8:01 AM

inheritance of abstract class & the initialization sequence

inheritance of abstract class & the initialization sequence

abstract class A{
	abstract void f();
	A(){
		System.out.println("Initialize A before f()");
		f();
		System.out.println("Initialize A after f()");
	}
}

class B extends A {
	private int radius = 1; 
	
	B(int radius){
		System.out.println(this.radius);
		this.radius = radius;
	}

	public void print_radius(){
		System.out.println(this.radius);
	}
	
	@Override
	void f() {
		System.out.println(radius);
	}

}

public class test {
	public static void main(String args[]){
		B b = new B(5);
		b.print_radius();
	}
}