abstract class A { abstract void show(); void disp() { System.out.println("This is abstract disp Method"); } } class B extends A { void show() { System.out.println("welcome"); } void add() { System.out.println("This is B class Add Method"); } } class C extends A { void show() { System.out.println("java"); } } public class Main { public static void main(String arhs[]) { A a=new B(); a.show(); a.disp(); B b=new B(); b.show(); b.disp(); b.add(); } }
welcome
This is abstract disp Method
welcome
This is abstract disp Method
This is B class Add Method
Note:
In the above example object created multiple times so memory allocated multiple times. To overcome this program down casting introduced.