Overriding vs Overloading : Overloading is about same method have different signatures. Overriding is about same method, same signature but different classes connected through inheritance . Overloading is an example of compiler-time polymorphism and overriding is an example of run time polymorphism.