Difference between overloading and Overriding. <Giving a
confusing example to test the concept.>
(also asked in PA Consultancy Group,iflex,Value
chain,IBM,CTS,Accenture, Tarang>
Answer Posted / suman
OVERRIDING – when you extend a class and write a method in
the derived class which is exactly similar to the one
present in the base class, it is termed as overriding.
Example:
public class BaseClass{
public void methodToOverride()
{
//Some code here
}
}
public class DerivedClass extends BaseClass{
public void methodToOverride()
{
//Some new code here
}
}
As you can see, in the class DerivedClass, we have
overridden the method present in the BaseClass with a
completely new piece of code in the DerivedClass.
What that effectively means is that if you create an object
of DerivedClass and call the methodToOverride() method, the
code in the derivedClass will be executed. If you hadn’t
overridden the method in the DerivedClass then the method
in the BaseClass would have been called.
OVERLOADING - when you have more than one method with the
same name but different arguments, the methods are said to
be overloaded.
Example:
public class OverLoadingExample{
public void add(int i, int j)
{
int k = i + j;
}
public void add(String s, String t)
{
int k = Integer.parseInt(s) + Integer.parseInt(t);
}
}
As you can see in the example above, we have the same
method add() taking two parameters but with different data
types. Due to overloading we can now call the add method by
either passing it a String or int
| Is This Answer Correct ? | 1 Yes | 0 No |
Post New Answer View All Answers
What are different types of inner classes ?
What is time complexity java?
What are encapsulation, inheritance and polymorphism?
Can we override constructor in java?
What are the skills required for core java?
What is a classloader in java?
How static variable work in java?
What are benefits of java?
Is there a jre for java 11?
How many decimal digits is 64 bit?
How do you add spaces in java?
What is type safety in java?
What are inbuilt functions in java?
What is an infinite loop? How infinite loop is declared?
What is memory leak and how does java handle it?