class A{
	public void func1(){
		System.out.println("A function is calling");
	}
	public void func2(){
		func1();
	}
	
}
class B extends A{
	public void func1(){
		System.out.println("B function is calling");
	}
	public void func3(){
		System.out.println(" B func3 is calling");
	}
}
public class c{
	public static void main(String [] args){
		B b=new B();
		A a=b;
		callA(a);
		callA(new B());
	}
	public static void callA(A a){
		a.func1();
		a.func2();
	}
}
