I only need the realtime examples and when we use both runtime and coplile time polymorphism
Compile time polymorphism is the normal function overloading that happens with functions having same name but different parameters like
void area(int a)
void area(int a,int b)
cleraly the in function call area(5); and area(5,10); the arguments determines which function to call this is compile time polymorphism.Therefore compile time polymorphism is functions and operators overloading
Method Overriding is a great example of run time polymorphism.Suppose you have two classes
Class B:extends A
obj.getData(); //function of class B will b invoked
The creation of objects happens at runtime and hence the function call is determined at run time.
Check this out.
The example given there are based on day to day life.
run time and compile time polymorphism in java