What is difference between overloading and overriding?

Answer Posted / javamasque

Overloading: As more than one methods are defined with in same class with same name but have any one of the below differences is called method overloading. It is also call static / compile time polymorphism.
1. Input parameter data type should be different.
2. Number of input parameters should be different.
There are two types of overloading as below
1. Constructor overloading.
2. Method overloading (instance / class)
Note: Overloading is not considered on below things
1. Return type
2. Access modifier
3. Sequence of input parameters.
4. Different exceptions

Overriding: As a method in parent class is defined with exact same signature in one of its child class is call method overriding. It is called dynamic or runtime polymorphism. Method overriding is still considered even if the override method in child class is differ as below from its parent method.
1. The visibility can be broader but can’t be narrower.
2. The exception can be specific but can’t be generic.
3. The return type can be narrower but can’t be broader.

Is This Answer Correct ?    6 Yes 0 No



Post New Answer       View All Answers


Please Help Members By Posting Answers For Below Questions

How to connect to a remote database using Applet?

2250


Explain the inheritance?

764


What are abstract methods in java?

879


Why should I use abstract class?

775


What is super constructor?

744


What is default locale java?

792


How do you compare values in java?

795


Is hashset ordered?

764


What is anagram number?

652


When is the arraystoreexception thrown?

772


What is a generic data type?

744


Is passing by reference faster?

757


What is regex java?

796


Why put method is idempotent?

654


explain multi-threading in java?

789